Hbase节点管理

1.退役节点

(1)

 shell>balance_switch false

然后,hbase-daemon.sh stop regionserver

(2)

graceful_stop.sh
Usage: graceful_stop.sh [--config &conf-dir>] [--restart] [--reload] [--thrift] [--rest] &hostname>
thrift If we should stop/start thrift before/after the hbase stop/start
rest If we should stop/start rest before/after the hbase stop/start
restart If we should restart after graceful stop
reload Move offloaded regions back on to the stopped server
debug Move offloaded regions back on to the stopped server
hostname Hostname of server we are to stop

这样做,受限会下线region,然后将region部署到别的resionserver上,在关闭该regionserver .这样不会有wal log的split。

(3)同时下线多个regionserver。这时候,这些regionserver在 zk Znode 中会被编入hbase_root/draining,这样就避免了一个将一个要下线的机器的region部署到另外一个要下线的机器上的情况。

(3)磁盘损坏时,有两种选择。直接下线datanode(hadoop dfsadmin -refreshNodes) ,

或者等坏盘上的数据被拷贝(dfs.datanode.failed.volumes.tolerated > 0)。

2.回滚重启

(1) hbase hbck  确保集群是连续的

(2)hbase-daemon stop master ;hbase-daemon.sh start master  重启master

(3)for i in `cat conf/regionservers|sort`; do ./bin/graceful_stop.sh --restart --reload --debug $i; done &> /tmp/log.txt &

(4)hbase-daemon stop master ;hbase-daemon.sh start master

(5)hbase hbck  确保集群是连续的

3.添加一个节点

(1)启动datanode 服务

(2)hbase-daemon .sh start regionserver

     但是如果中等规模或者大规模的集群,如果是开启balancer的,那么会有很多region被复制过来,这样会影响网速,最好是以一种平和的
方式,暂时不要启动balancer,一个一个region地部署,或者是在适当的时候出发major compact来移动region。
上一篇:Android仿今日头条和知乎等App顶部滑动导航实现代码分析及源码下载


下一篇:SpringMVC 多文件上传