热门IT资讯网

升级Hbase,解决bug问题

发表于:2024-11-22 作者:热门IT资讯网编辑
编辑最后更新 2024年11月22日,报错:master.HMaster: Failed to become active master环境:OS: CENTOS6.5Hadoop: 2.7.1Hbase: 1.0.4ZooKeeper:

报错:

master.HMaster: Failed to become active master

环境:
OS: CENTOS6.5

Hadoop: 2.7.1

Hbase: 1.0.4

ZooKeeper: 3.4.6

动作:

Hbase 升级版本1.0.4 --> 1.2.4


下午接到老朋友电话,说Hbase Master开不起来,因为是生产环境,所以异常着急。事发在凌晨4点多,有一个服务器的硬盘坏了,导致该服务器的Hadoop服务异常了,Hbase也受到了影响,应该是程式正在写hbase的进程受到影响,随之Hbase集群挂掉了。管理员接到产线电话后,×××连接到服务器重启服务,hadoop开启是正常的,可是Hbase的Master一直无法重启。并报错,如下:

参考了很多很多的文章,一直无法解决此问题,一般Hbase的问题解决就是2个思路,要么内存分配有问题,要么就是参数异常,这次显然并不简单,我们有怀疑过是不是Zookeeper异常,导致一直无法获得ClusterID,可是如果Zookeeper异常的话hadoop不可能开得起来,所以排除Zookeeper异常造成。

最后看到google上有提到,是bug的影响。最终,定出2种方案,要么升级Hbase版本,要么数据清除重构。相对之下,更新Hbase版本比较快和安全,因为Hbase的数据是存储在Hadoop里的,Hadoop的数据没有问题,所以升级Hbase不会对Hadoop的数据产生影响。

由于接近吃饭时间了,我就去外面打个饭,还没有打包完,就接到好消息,说数据库集群开起来了,而且数据没有丢,一切正常。

整个解决过程接近4个小时,花了很多时间去研究问题,也尝试了很多的方法,最终要升级数据库集群版本,这还是第一次。Bug这种东西,不会经常遇到,可是遇到的时候就是最郁闷的时候,要么绕过,要么迎面解决。这次我们是迎面解决了问题。Yeah.




0