一 概述
需求:为了整合Hive-2.x和Phoenix-4.13,所以将habse升级为1.2.6,官网版本 http://mirror.bit.edu.cn/apache/hbase/1.2.6/hbase-1.2.6-bin.tar.gz
理由:1 hbase是1.2.6版本的,所以选用4.13.1版本的phoenix,官网:http://apache.fayea.com/phoenix/
理由:2 hbase是1.2.6版本,关于hbase和hadoop的版本对应信息,http://hbase.apache.org/book/configuration.html#basic.prerequisites
注意:公司集群采用2.6.0,这个官方的应用是不完全支持,当然在不使用加密分区的情况下是可以使用的
详细风险见官方网站 https://issues.apache.org/jira/browse/HADOOP-11710
Hadoop distributions based on the 2.6.x line must have HADOOP-11710 applied if you plan to run HBase on top of an HDFS Encryption Zone(HDFS 加密). Failure to do so will result in cluster failure and data loss. This patch is present in Apache Hadoop releases 2.6.1+.
二 搭建HBASE
hbase安装过程:大约分为若干步骤
1 下载解压
安装包http://mirror.bit.edu.cn/apache/hbase/1.2.6/hbase-1.2.6-bin.tar.gz,
其中为了整合phoenix,最好有对应的phoenix包
tar -zxvf hbase-1.2.6-bin.tar.gz -C /opt/soft/
cd /opt/soft/hbase-1.2.6/
vim conf/hbase-env.sh
#在内部加入export JAVA_HOME=/usr/local/jdk1.8(或者source /etc/profile)
#export HBASE_MANAGES_ZK=false
3 hbase-site.xml
#####下面是在hbase-site.xml的项#####
####是修改项
<configuration>
<property>
<name>hbase.rootdir</name>
#### <value>hdfs://master110.weiboyi.com:8020/apache-hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
#### <value>/opt/soft/hbase-1.2.6/data/zookeeper</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.client.write.buffer</name>
<value>8388608</value>
</property>
<property>
<name>hbase.client.pause</name>
<value>100</value>
</property>
<property>
<name>hbase.client.retries.number</name>
<value>35</value>
</property>
<property>
<name>hbase.client.scanner.caching</name>
<value>10000</value>
</property>
<property>
<name>hbase.client.keyvalue.maxsize</name>
<value>20971520</value>
</property>
<property>
<name>hbase.ipc.client.allowsInterrupt</name>
<value>true</value>
</property>
<property>
<name>hbase.client.primaryCallTimeout.get</name>
<value>10</value>
</property>
<property>
<name>hbase.client.primaryCallTimeout.multiget</name>
<value>10</value>
</property>
<property>
<name>hbase.coprocessor.region.classes</name>
<value>org.apache.hadoop.hbase.security.access.SecureBulkLoadEndpoint</value>
</property>
<property>
<name>hbase.regionserver.thrift.http</name>
<value>false</value>
</property>
<property>
<name>hbase.thrift.support.proxyuser</name>
<value>false</value>
</property>
<property>
<name>hbase.rpc.timeout</name>
<value>1200000</value>
</property>
<property>
<name>hbase.snapshot.enabled</name>
<value>true</value>
</property>
<property>
<name>hbase.snapshot.master.timeoutMillis</name>
<value>60000</value>
</property>
<property>
<name>hbase.snapshot.region.timeout</name>
<value>60000</value>
</property>
<property>
<name>hbase.snapshot.master.timeout.millis</name>
<value>60000</value>
</property>
<property>
<name>hbase.security.authentication</name>
<value>simple</value>
</property>
<property>
<name>hbase.rpc.protection</name>
<value>authentication</value>
</property>
<property>
<name>zookeeper.session.timeout</name>
<value>600000</value>
</property>
<property>
<name>zookeeper.znode.parent</name>
#### <value>/apache-hbase</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>slave111.weiboyi.com,slave112.weiboyi.com,slave113.weiboyi.com</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
</configuration>
4 regionservers和backup-masters
#在regionservers内部写入localhost
#### echo "yyh1" > conf/regionservers
#### echo "yyh2" >> conf/regionservers
#### echo "yyh3" >> conf/regionservers
################4 backup-masters
#### echo "yyh2" > backup-masters
5 增加phoenix-[version]-server.jar和phoenix-[version]-client.jar
cd /opt/soft
tar -zxvf apache-phoenix-4.13.1-HBase-1.2-bin.tar.gz
cp apache-phoenix-4.13.1-HBase-1.2-bin/phoenix-4.13.1-HBase-1.2-server.jar hbase-1.2.6/lib/
cp apache-phoenix-4.13.1-HBase-1.2-bin/phoenix-4.13.1-HBase-1.2-client.jar hbase-1.2.6/lib/
将hdfs当中的hdfs-site.xml 拷贝hbase的conf目录下
echo "##HBASE_HOME @ `date`" >>/etc/profile
echo "export HBASE_HOME=/opt/hbase">>/etc/profile
echo "export PATH=\$PATH:\$HBASE_HOME/bin">>/etc/profile
测试 start-hbase.sh
可以看出,新增了HRegionServer和HMaster进程。
通过http://yyh4:16030/访问Hbase的web页面