问题:
今天在学习的时候遇到的问题:
HDFS主节点DataNode正常启动但是从节点jps没有DataNode进程
在主节点直接start-dfs.sh全部启动HDFS之后jps
发现没有DataNode,或者主节点有DataNode但是其他从节点没有
切换到node2和node3中jps
发现只有Jps进程,没有Datanode进程
查看日志和排查:
1.首先可能是权限问题,之前有不小心用root用户启动过Hadoop,所以得排查Hadoop,安装路径的权限是不是hadoop用户的。包括/data/dn /data/nm
如果不是需要重新授权,所有节点都需要授权
chown -R hadoop:hadoop /export/server/hadoop-3.3.4/
chown -R hadoop:hadoop /data/
2.权限问题排查之后,查看日志,一般在hadoop/logs文件夹下,每个节点都看一下。
cd /export/server/hadoop-3.3.4/logs/
-rw-rw-r-- 1 hadoop hadoop 36462 Apr 16 21:00 hadoop-hadoop-datanode-node1.log
-rw-rw-r-- 1 hadoop hadoop 691 Apr 16 20:59 hadoop-hadoop-datanode-node1.out
-rw-rw-r-- 1 hadoop hadoop 50462 Apr 16 22:01 hadoop-hadoop-namenode-node1.log
-rw-rw-r-- 1 hadoop hadoop 691 Apr 16 20:59 hadoop-hadoop-namenode-node1.out
-rw-rw-r-- 1 hadoop hadoop 42745 Apr 16 22:01 hadoop-hadoop-secondarynamenode-node1.log
-rw-rw-r-- 1 hadoop hadoop 691 Apr 16 21:00 hadoop-hadoop-secondarynamenode-node1.out
-rw-rw-r-- 1 hadoop hadoop 0 Apr 16 20:59 SecurityAuth-hadoop.audit
①配置文件错误,日志里会指出是哪个文件的错误
切换到/export/server/hadoop-3.3.4/etc/hadoop下修改
②无法连接从节点
查看/etc/host 文件里面是否设置好了代理,和第一点的wokers文件是否一致,每个节点都得看看。
③data/nn/current ,/data/dn/current下的VERSION文件的clusterID不一致!
很多同学因为直接单台关闭虚拟机或者直接关机导致集群不正常关闭,所以这里VERSION里的clusterID不一致。
可以自己vim 同步一下,就按主节点的修改就行。
做完以上步骤记得删除日志文件和data下的文件,每台都执行
rm -rf /export/server/hadoop/logs/*
rm -rf /data/dn/* /data/nn/*
然后!记得初始化!
hadoop namenode -format
或者
hdfs namenode -format
最后!HDFS,启动!
node1
node2
node3