服役(commissioning)
当启动regionserver时,regionserver会向Hmaster注册并开始接收本地数据,开始的时候,新加入的节点不会有任何数据,平衡器开启的情况下,将会有新的region移动到开启的RegionServer上。如果启动和停止进程是使用ssh和HBase脚本,那么会将新添加的节点的主机名加入到conf/regionservers文件中。
退役(decommissioning)
顾名思义,就是从当前HBase集群节点中删除某个RegionServer,这个过程分为如下几步:
Step1、使用以下命令停止负载平衡器
hbase> balance_switch false
Step2、在退役节点上停止RegionServer
hbase> hbase-daemon.sh stop regionserver
Step3、RegionServer一旦停止,会关闭维护的所有region
Step4、Zookeeper上的该RegionServer节点消失
Step5、Master节点检测到该RegionServer下线
Step6、RegionServer的region服务得到重新分配
该关闭方法比较传统,需要花费一定的时间,而且会造成部分region短暂的不可用。
我们有一种更骚气的关闭方法:(推荐使用)
Step1、RegionServer先卸载所管理的region
$ bin/graceful_stop.sh <RegionServer-hostname>
例如:
$ bin/graceful_stop.sh hadoop-senior02.itguigu.com