HBase专栏 | ||
---|---|---|
上一篇 | 主目录 | 下一篇 |
【前言】
1 验证版本兼容性
我的HBase版本是hbase-1.2.6-bin.tar.gz
,jdk版本是1.8
(安装目录:/usr/java/jdk1.8.0_161
),hadoop版本2.7.3(安装目录:/home/hadoop/apps/hadoop-2.7.3
)
Apache HBase参考手册–>Apache HBase Configuration–>4. Basic Prerequisites
2 安装
2.1 解压
[hadoop@hadoop01 ~]$ tar -zxvf hbase-1.2.6-bin.tar.gz -C apps/
2.2 修改配置文件
进入/home/hadoop/apps/hbase-1.2.6/conf
[hadoop@hadoop01 conf]$ vim hbase-env.sh
# The java implementation to use. Java 1.7+ required.
export JAVA_HOME=/usr/java/jdk1.8.0_161
#表示不引用 hbase 自带的 zookeeper,用我们自己安装的
export HBASE_MANAGES_ZK=false
[hadoop@hadoop01 conf]$ vim hbase-site.xml
<configuration>
<property>
<!-- 指定 hbase 在 HDFS 上存储的路径 -->
<name>hbase.rootdir</name>
<value>hdfs://myha01/hbase</value>
</property>
<property>
<!-- 指定 hbase 是分布式的 -->
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<!-- 指定 zk 的地址,多个用“,”分割 -->
<name>hbase.zookeeper.quorum</name>
<value>hadoop01:2181,hadoop02:2181,hadoop03:2181,hadoop04:2181</value>
</property>
</configuration>
[hadoop@hadoop01 conf]$ vim regionservers
hadoop01
hadoop02
hadoop03
hadoop04
hadoop05
#指定备用的主节点。该文件是不存在的,需自行创建
[hadoop@hadoop01 conf]$ vim backup-masters
hadoop05
#最重要一步,要把 hadoop 的 hdfs-site.xml 和 core-site.xml 放到 hbase-1.2.6/conf 下
[hadoop@hadoop01 conf]$ cp ~/apps/hadoop-2.7.3/etc/hadoop/core-site.xml ~/apps/hbase-1.2.6/conf/
[hadoop@hadoop01 conf]$ cp ~/apps/hadoop-2.7.3/etc/hadoop/hdfs-site.xml ~/apps/hbase-1.2.6/conf/
2.3 分发到其他节点
#分发安装到各节点
[hadoop@hadoop01 apps]$ scp -r hbase-1.2.6/ hadoop@hadoop02:$PWD
[hadoop@hadoop01 apps]$ scp -r hbase-1.2.6/ hadoop@hadoop03:$PWD
[hadoop@hadoop01 apps]$ scp -r hbase-1.2.6/ hadoop@hadoop04:$PWD
[hadoop@hadoop01 apps]$ scp -r hbase-1.2.6/ hadoop@hadoop05:$PWD
2.4 同步时间
HBase 集群对于时间的同步要求的比 HDFS 严格,所以,集群启动之前千万记住要进行时间同步,要求相差不要超过 30s
2.5 配置环境变量
01~05每台都要配
vim ~/.bashrc
#添加两行:
export HBASE_HOME=/home/hadoop/apps/hbase-1.2.6
export PATH=$PATH:$HBASE_HOME/bin
执行 source ~/.bashrc
,使配置生效
2.6 启动
按照以下顺序启动:zookeeper集群、hdfs集群、HBase集群
具体命令流程:
[hadoop@hadoop01 ~]$ zkServer.sh start#01、02、03、04
[hadoop@hadoop01 ~]$ start-dfs.sh
[hadoop@hadoop03 ~]$ start-yarn.sh
[hadoop@hadoop04 ~]$ yarn-daemon.sh start resourcemanager
[hadoop@hadoop01 ~]$ mr-jobhistory-daemon.sh start historyserver#可不用启动
#保证 ZooKeeper 集群和 HDFS 集群启动正常的情况下启动 HBase 集群
[hadoop@hadoop01 apps]$ start-hbase.sh
#如果有节点相应的进程没有启动,那么可以手动启动
hbase-daemon.sh start master
hbase-daemon.sh start regionserver
观看HBase启动日志可以看到:
- 首先在命令执行节点启动 master
- 然后分别在 hadoop01,hadoop02,hadoop03,hadoop04,hadoop05 启动 regionserver
- 然后在 backup-masters 文件中配置的备节点上再启动一个 master 主进程
2.7 验证
jps
查看进程
通过访问浏览器页面,格式为”主节点:16010”http://hadoop01:16010/
2.8 关闭
后开的先关闭
[hadoop@hadoop01 ~]$ stop-hbase.sh
[hadoop@hadoop04 ~]$ yarn-daemon.sh stop resourcemanager
[hadoop@hadoop03 ~]$ stop-yarn.sh
[hadoop@hadoop01 ~]$ stop-dfs.sh
[hadoop@hadoop01 ~]$ zkServer.sh stop#01、02、03、04