Hadoop datanode没法启动

  缘由是屡次 hadoop namenode -format  致使 datanode 的version 里的Cluster-Id 不一致node

这个Cluster-Id的位置在:  本身设置的数据临时文件/dfs/name(若是是datanode就是data)/name/current里的VERSION文件oop

如个人在 hdpdata//home/hadoop/hdpdata/dfs/name/current。若是不知道能够去hadoop/etc/hadoop/core-site.xml 里找。spa

#core-site.xml文件

<!-- 指定hadoop运行时产生文件的存储目录 --> <property> <name>hadoop.tmp.dir</name> <value>/home/hadoop/hdpdata</value> </property>

解决办法是把全部节点(包括namenode和datanode)的这个临时文件夹删除,而后 namenode节点,从新hadoop namenode -format, 再start-all.sh.就能够了,临时文件夹会自动从新生成,这时候version里的Cluster-Id会保持一致code

 

能够用Ansible批量删除临时数据文件夹orm

playbook代码xml

# 由于 hadoop namenode -format 常常会致使hadoop的current文件夹里的clusterID会一致,因此编一个playbook来批量删除current文件夹
- name: delete-hdpdata-folder
  hosts: aaa
  remote_user: hadoop
  become: true
  become_user: hadoop
  tasks:
  - name: delete-hdpdata-all
    file:
      path: ~/hdpdata/
      state: absent
相关文章
相关标签/搜索