文章目录
HBase2.x安装部署
前置条件:
hdfs用户可以通过sudo 切换到 root
1.1 Zookeeper正常部署
首先保证Zookeeper集群的正常部署,并启动之:
[hdfs@dn3 zookeeper-3.5.7]$ bin/zkServer.sh start
[hdfs@dn4 zookeeper-3.5.7]$ bin/zkServer.sh start
[hdfs@dn5 zookeeper-3.5.7]$ bin/zkServer.sh start
1.2 Hadoop正常部署
Hadoop集群的正常部署并启动:
[hdfs@dn3 hadoop-3.1.3]$ sbin/start-dfs.sh
[hdfs@dn4 hadoop-3.1.3]$ sbin/start-yarn.sh
1.3 HBase的解压
解压Hbase到指定目录:
[hdfs@dn3 software]$ tar -zxvf hbase-2.0.5-bin.tar.gz -C /opt/module
[hdfs@dn3 software]$ mv /opt/module/hbase-2.0.5 /opt/module/hbase
配置环境变量
[hdfs@dn3 ~]$ sudo vim /etc/profile.d/my_env.sh
添加
#HBASE_HOME
export HBASE_HOME=/opt/module/hbase
export PATH=$PATH:$HBASE_HOME/bin
1.4 HBase的配置文件
修改HBase对应的配置文件。
1.hbase-env.sh修改内容:
export HBASE_MANAGES_ZK=false
2.hbase-site.xml修改内容:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://nn1:8020/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>dn3,dn4,dn5</value>
</property>
</configuration>
3.regionservers:
dn3
dn4
dn5
1.5 HBase远程发送到其他集群
[hdfs@dn3 module]$ xsync hbase/
1.6 HBase服务的启动
1.单点启动
[hdfs@dn3 hbase]$ bin/hbase-daemon.sh start master
[hdfs@dn3 hbase]$ bin/hbase-daemon.sh start regionserver
提示:如果集群之间的节点时间不同步,会导致regionserver无法启动,抛出ClockOutOfSyncException异常。
修复提示:
a、同步时间服务
略
b、属性:hbase.master.maxclockskew设置更大的值
<property>
<name>hbase.master.maxclockskew</name>
<value>180000</value>
<description>Time difference of regionserver from master</description>
</property>
2.群启
[hdfs@dn3 hbase]$ bin/start-hbase.sh
对应的停止服务:
[hdfs@dn3 hbase]$ bin/stop-hbase.sh
1.7 查看HBase页面
启动成功后,可以通过“host:port”的方式来访问HBase管理页面,例如:
http://dn3:16010
1.8 HBase HA
在HBase中HMaster负责监控HRegionServer的生命周期,均衡RegionServer的负载,如果HMaster挂掉了,那么整个HBase集群将陷入不健康的状态,并且此时的工作状态并不会维持太久。故生成环境中必须配置HBase对HMaster的高可用。
1.关闭HBase集群(如果没有开启则跳过此步)
${HBASE_HOME}/bin/stop-hbase.sh
2.在conf目录下创建backup-masters文件
vim ${HBASE_HOME}/conf/backup-masters
3.在backup-masters文件中配置高可用HMaster节点
echo dn4 > ${HBASE_HOME}/conf/backup-masters
4.将整个conf目录scp到其他节点
scp -r ${HBASE_HOME}/conf/ dn4:/opt/module/hbase/
scp -r ${HBASE_HOME}/conf/ dn5:/opt/module/hbase/
2 HBase整合Phoenix
1.下载地址
http://archive.apache.org/dist/phoenix/
2.Phoenix部署
1)上传并解压tar包
tar -zxvf apache-phoenix-5.0.0-HBase-2.0-bin.tar.gz -C /opt/module/
cd /opt/module/
mv apache-phoenix-5.0.0-HBase-2.0-bin phoenix
2)复制server包并拷贝到各个节点的$HBASE_HOME/lib目录下
cd /opt/module/phoenix/
cp /opt/module/phoenix/phoenix-5.0.0-HBase-2.0-server.jar /opt/module/hbase/lib/
xsync /opt/module/hbase/lib/phoenix-5.0.0-HBase-2.0-server.jar
3)配置环境变量
# PHOENIX_HOME
export PHOENIX_HOME=/opt/module/phoenix
export PHOENIX_CLASSPATH=$PHOENIX_HOME
export PATH=$PATH:$PHOENIX_HOME/bin
4)配置$HBASE_HOME/conf/hbase-site.xml 文件
vim /opt/module/hbase/conf/hbase-site.xml
<property>
<name>phoenix.schema.isNamespaceMappingEnabled</name>
<value>true</value>
</property>
<property>
<name>phoenix.schema.mapSystemTablesToNamespace</name>
<value>true</value>
</property>
分发配置文件
xsync /opt/module/hbase/conf/hbase-site.xml
5)拷贝$HBASE_HOME/conf/hbase-site.xml 至 $PHOENIX_HOME/bin下
6)重启HBase
stop-hbase.sh
start-hbase.sh
7)连接Phoenix
/opt/module/phoenix/bin/sqlline.py dn3,dn4,dn5:2181