背景:
在搭建好hadoop高可用集群后,准备测试一下。
使用kill -9 杀死namenode进程,模拟JVM崩溃。另一个NameNode应在几秒钟内自动变为活动状态。检测故障并触发故障转移所需的时间取决于ha.zookeeper.session-timeout.ms的配置,默认值为5秒。
问题:
另外一个namenode并没有从stanby状态变为active状态。测试不成功。
解决:
检查zkfc守护程序以及NameNode守护程序的日志。错误信息如下:

提示未找到fuser程序,导致无法进行fence。
通过如下命令来安装,Psmisc软件包中包含了fuser程序(namenode所在主机上上都需要进行安装)
安装完成后重启集群。
yum install psmisc -y
在测试Hadoop高可用集群时,模拟NameNode进程崩溃后,故障转移未按预期工作。问题源于fuser程序未找到,影响了节点的fencing过程。通过安装包含fuser的Psmisc软件包并在所有namenode主机上执行此操作,然后重启集群,解决了问题。
2011

被折叠的 条评论
为什么被折叠?



