集群情况
master:x.x.x.102
slave1:x.x.x.103
salve2:x.x.x.104
问题描述
启动集群后,执行jps命令,发现所有节点都缺少datanode
(这里尝试过删掉data的目录hadoop安装路径/etc/hadoop/core-site.xml中配置的hadoop.tmp.dir存储路径,重新格式化hdfs namenode -format,未能解决问题)
hdfs-site.xml配置文件中,datanode的存储路径dfs.datanode.data.dir-----/data/tmp/hadoop/data下面为空,正常情况下此文件夹下面应该存在current文件夹和in_use.lock文件
解决
查看hadoop的datanode日志 hadoop安装路径/logs/ 上下翻动一下!!!肯定有输出的
日志里说缺少/var/run/hdfs-sockets和/var/run/hdfs-sockets/dn两个文件夹
查看配置文件hdfs-site.xml,发现缺少的文件夹是dfs.domain.socket.path的配置的路径
查看本机/var/run文件夹下,还真缺少这两个文件夹
注意:这里只需要手动创建一个文件夹/var/run/hdfs-sockets,其下的子目录会由hadoop自己创建(若手动创建两个,会报错)(要在集群的每一个机器上都创建)
mkdir /var/run/hdfs-sockets
重启集群,查看集群进程,正常