0.92.0单机伪分布式配置(3)

5.zookeeper安装与配置

下载zookeeper-3.4.2.tar.gz,这个软件包是hbase要求的版本号,为了避免莫名奇妙的错误,我尽量采用相关的版本号。特别说明一下,hive-0.9.0要求的zookeeper版本号是3.4.3,但是我使用的是3.4.2,不过也没有出错,也就没有管了。

终端中键入

tar xzvf zookeeper-3.4.2

安装完成后,打开zookeeper-3.4.2文件夹下的conf文件夹,里面有3个文件,将zoo-sample.cfg更名为zookeeper.cfg,内容不做任何改动。

6.hive安装与配置

下载hive-0.9.0.tar.gz,原本想使用hive-0.8.1的,结果0.8.1版本需要的hbase版本为0.8.9,找了半天都没有找到,最后就选择了0.9.0版本。

在终端键入

tar xzvf hive-0.9.0.tar.gz,同前一样,不做更名处理。打开hive-0.9.0下的conf文件夹,做如下配置:

将conf中的hive-default.xml.sample以及hive.sh.sample改为hive-default.xml和hive-env.sh,并把hive-default.xml复制并重命名为hive-site.xml.

在hive-env.sh最后添加

export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_33

export HIVE_HOME=/home/martin/hive-0.9.0

export PATH=$PATH:/home/martin/hive-0.9.0/bin

export Hadoop_HOME=/home/martin/hadoop-1.0.3

打开hive-site.xml,在最后添加

<property>
 <name>hive.exec.scratchdir</name>  
 <value>/home/martin/hive-0.9.0/tmp</value>  
 
</property>  

   
<property>  
  <name>hive.querylog.location</name>  
  <value>/home/martin/hive-0.9.0/logs</value>  
</property>  
   
<property>
  <name>hive.aux.jars.path</name>  
  <value>file:///home/martin/hive-0.9.0/lib/hive-hbase-handler-0.9.0.jar,file:///home/martin/hive-0.9.0/lib/hbase-0.92.0.jar,file:///home/martin/hive-0.9.0/lib/zookeeper-3.4.2.jar</value>     
</property>

在终端键入
hive-0.9.0/bin/hive start

出现一下信息

martin@Ubuntu:~$ hive-0.9.0/bin/hive start
WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files.
Logging initialized using configuration in jar:file:/home/martin/hive-0.9.0/lib/hive-common-0.9.0.jar!/hive-log4j.properties
Hive history file=/home/martin/hive-0.9.0/logs/hive_job_log_martin_201208271000_1268040863.txt
hive>

键入show tables,可以查看hive中已有的数据表。

7.配置伪分布式

删除hive-0.9.0/lib下原有的hbase-0.92.0.jar包,拷贝hbase-0.92.0下hbase-0.92.0.jar包到hadoop-1.0.3/lib和hive-0.9.0/lib下,将zoopeeker-3.4.2文件夹下的zookeeper-3.4.2拷贝到hive-0.9.0/lib和hbase-0.92.0/lib下,删除hbase-0.92.0/lib中原有的zookeeper-3.4.2.jar包和hive-0.9.0/lib下的zookeeper-3.4.3.jar包。并将hbase-0.92.0/conf/hbase-site.xml拷贝到hadoop-1.0.3/conf下。编辑/etc/hosts文件,将127.0.1.1所在行更改注释掉,另起一行,将刚刚注释的那行复制下来,去掉注释符,并将127.0.1.1修改为127.0.0.1,其他内容不用修改。

按照如下顺序启动集群相关服务

hadoop-1.0.3/bin/start-all.sh

hbase-0.92.0/bin/start-hbase.sh

hive-0.9.0/bin/hive start

此时用jps查看可以得到如下信息

4916 RunJar
3974 HMaster
9241 Jps
3050 JobTracker
2956 SecondaryNameNode
3402 TaskTracker
2222 NameNode
2593 DataNode
3893 HQuorumPeer
4310 HRegionServer
5370 Main
如果缺少某些服务,可能会使hive和hbase的整合不成功。注:启动hive后,不要急忙推出,否则可能看不到Runjar,Main服务。

启动hive服务后,输入

CREATE TABLE hbase_table_1(key int, value string) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val") TBLPROPERTIES ("hbase.table.name" = "xyz");
如果没有报错,则hive和hbase的整合成功了。如果出现namenode in sage mode的提示,则使用

hadoop-1.0.3/bin/hadoop dfsadmin -safemode leave
关闭安全模式,再使用就可以了

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e7af98988791bb3bdfbb974619de4fed.html