背景:
在搭建好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