ny3259 发表于 2018-8-20 07:37:09

hbase shell中disable 和drop无法执行

  1 通过hbase的web监控页面查询工作状态发现Regions in Transition区域有长时间未执行的任务,此时需要关闭hbase-master并重启,再这个问题处理过程中我直接使用/etc/init.d/hbase-master restar命令集群并执行一下操作,均没有生效,最后执行/etc/init.d/hbase-master stop 并将集群中region NUM为0的机器的hbase-regisionserver机器通过/etc/init.d/hbase-regionserver stop,并检查相关程序进程是否关闭,我再执行jps的时候出现一下现象无法直接查看到进程号对应的相关进程名,
  

# jps  
71125 Jps
  
143011 NodeManager
  
65046 MRAppMaster
  
59326 DataNode
  
66658 -- process information unavailable
  
66719 -- process information unavailable
  

  如果出现以上这种情况可以使用一下方法进行查看,java每次启动一个进程再/tmp目录下均会有单独记录如下:
  ls /tmp/hsperfdata_*进到相应目录查看,即可观察到进程号,如果存在则上述执行的命令没有执行成功,可以通过kill -9 pid进行关闭,之后再启用集群即可

  shell>/etc/init.d/hbase-master start
  shell>hbase shell
  hbase>balance_switch true
  hbase(main):007:0> balance_switch true    #开启hbase的balance重新平衡
  false
  0 row(s) in 0.0070 seconds
  hbase(main):008:0> balancer    #手动触发balance
  true
  0 row(s) in 57.5330 seconds
  此时查看Regions in Transition已经正常,Regions.Num区域也回复平衡
  此时进入hbase shell环境执行disable 和drop命令均恢复正常
  例:
  

hbase(main):001:0> drop 'hf_csql_20180301'  
0 row(s) in 0.6670 seconds


页: [1]
查看完整版本: hbase shell中disable 和drop无法执行