部署hadoop-ha QJM架构过程我就不说了,参考 我的博客:hadoop-ha QJM架构部署
故障一:
namenode 报错日志如下:
WARN org.apache.hadoop.hdfs.qjournal.client.QuorumJournalManager: Remote journal 10.168.35.127:8485 failed to write txns 71760508-71760510. Will try to write to this JN again after the next log roll.
org.apache.hadoop.ipc.RemoteException(java.io.IOException): IPC's epoch 43 is less than the last promised epoch 44
解决思路:
1,先把报错关键信息 "IPC's epoch is less than the last promised epoch" 贴到google上查了一下,大部分外国人的回答都是因为网络原因引起的.
2,据上,经过看日志,每次启动另一个namenode的时候都会去探测三个 journalnode服务的8485端口,提示是faild的,
说明最有可能是网络问题,排查如下:
ifconfig -a看网卡是否有丢包,
查看/etc/sysconfig/selinux 配置 SELINUX=disabled 是否是对的,
/etc/init.d/iptables status 查看防火墙是否运行,因为我们hadoop是运行内网环境,记得之前部署的时候,防火墙是关闭的, 看来问题找到了
/etc/init.d/iptables stop
先后检查了,三个 journalnode服务器的防火墙,都莫名其妙的启着的,马上关闭
再重新启动两个namenode,查看日志,正常了,
2,总结如下:
hadoop故障事关网络的话,
1.查网卡是否丢包,
2,查防火墙配置是否正确,
当前集群环境下,两个namenode的运行是依懒于 journalnode服务的,