hadoop HA (no zkfc to stop) DFSZKFailoverController进程没有启动

戏子无情 提交于 2019-11-28 14:49:36
  1. 这个bug确实恶心的不要不要的。我一开始以为是我自己打开方式(毕竟不熟悉搭建流程,别人怎么做,我照着做)
    1. 我照着视频或者博客编写hdfs-site.xml(dfs.ha.fencing.methods)

    1. 但是一直再start-dfs.sh 后(DFSZKFailoverController进程没有启动)
    2. 在stop-dfs.sh后提示(no zkfc to stop)
  • 我一开始当然顺势去看日志(程序员不看日志处理,还能干什么?)
    1. 因为在start-dfs.sh看到

    看到zkfc的日志在$HADOOP_HOME/log下的hadoop-root-zkfc-package.out,那log就估计也在这里了。
      1. 一开始没有调试经验,一进去看使用vim $HADOOP_HOME/log/hadoop-root-zkfc-package.log
        1. 看到的是

        1. 以为没有什么日志可看,就草草把vim关闭。
      • 看到没有头绪,只好去百度,谷歌。发现有不少都是问这个问题。但是没有一个是真正解决的文章(正因为这样,我才写而已)
        1. 寻找了一个下午+一个晚上,没有解决!
      • 又回到起点,去看日志吧。不过我当时不是使用vim,而是使用了cat(不建议用在文本太大的话,你会后悔的。不过也是因为我这个愚蠢的动作给我解决bug的思路),
      • 如果你一直启动不了,最后肯定是能看到这个异常的。
          1. 然后回去查看那个hadoop四个重要配置文件core-site.xml,hdfs-site.xml,yarn-site.xml,map-site.xml(slaves也算,只是压根没有配这个属性而已)
            1. 由于我是在start-dfs.sh才能调起DFSZKFailoverController
              1. 所以不关yarn-site.xml,map-site.xml的事
            2. 只好去看core-site.xml,hdfs-site.xml
              1. 分别查看,只有hdfs-site.xml存在这样的"sshfence",但是有排版格式(换行了)
            3. 我果断把排版格式去掉,变成

          同步给其他集群,再启动start-dfs.sh
            1. 就出现了DFSZKFailoverController进程

             
             
            1. 总结:
              1. 他喵自己,为了懒去复制别人github的配置代码(https://github.com/xiongbeer/MyHadoopConf/tree/master/clustConf)。而导致自己浪费一天时间。这个不是重点。
              2. 重点在分析上,没有具体看日志具体多少行,就草率把日志关闭了。这是不可取的

            原文:http://note.youdao.com/noteshare?id=05807db5f3367ad35da34c110a0bfa16&sub=3745E626E40844BEA1AE3A3ECD6AD058

            易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
            该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!