说明
本文主要分析一下Hbase集群启动过程,只涉及到核心过程,不涉及到具体内容,hbase的版本是hbase-0.94.27.tar
整体流程:
- 运行start-hbase.sh脚本
- 执行 $bin/hbase-config.sh 设置配置参数
- 根据集群启动是否是分布式的模式,在本地仅启动master或者启动整个集群
- 判断启动模式:重新启动集群(restart)or初次启动集群(start)(缺省:start)
- 如果是分布式模式,依次启动如下服务:
启动zookeeper org.apache.hadoop.hbase.zookeeper.HQuorumPeer(这种情况是使用HBase自身管理Zookeeper)
启动master org.apache.hadoop.hbase.master.HMaster
启动${HBASE_REGIONSERVERS}目录中指定的regionserver org.apache.hbase.regionserver.HRegionServer
启动${HBASE_BACKUP_MASTERS}中指定的master-backup - 启动5中的服务会调用hbase-daemons.sh脚本,而该脚本最终调用hbase脚本启动服务对应的进程
start-hbase.sh脚本
- 执行hbase-config.sh脚本,设置环境变量
- 判断集群启动的模式,autore