在 CentOS 上排查 HDFS 报错,一般按 “看日志 → 看进程 → 看配置 → 看端口/权限” 的顺序来。下面给你一套实用排查思路。
jps
正常应看到:
少了哪个,就重点查哪个。
HDFS 日志默认在:
$HADOOP_HOME/logs/
或
/var/log/hadoop/
hadoop-root-namenode-*.log
hadoop-root-datanode-*.log
实时查看:
tail -f $HADOOP_HOME/logs/hadoop-root-namenode-*.log
java.io.IOExceptionConnection refusedPermission deniedDisk errorIncompatible namespaceIDBlock missinghdfs dfsadmin -report
看 DataNode 是否注册。
hdfs fsck /
检查文件系统健康状态。
hdfs haadmin -getServiceState nn1
(如果是 HA 模式)
重点看:
$HADOOP_HOME/etc/hadoop/
core-site.xmlhdfs-site.xmlworkers / slaves常见错误:
fs.defaultFS 写错clusterID 不一致ls -l /data/hadoop/dfs/name
ls -l /data/hadoop/dfs/data
权限问题:
chown -R hadoop:hadoop /data/hadoop
netstat -tunlp | grep java
或
ss -tunlp | grep 9000
systemctl stop firewalld
systemctl disable firewalld
getenforce
如果是 Enforcing:
setenforce 0
永久关闭:
vi /etc/selinux/config
SELINUX=disabled
原因:
clusterID 不一致解决:
cat /data/hadoop/dfs/name/current/VERSION
cat /data/hadoop/dfs/data/current/VERSION
不一致就删 DataNode 数据目录重新格式化(⚠️会丢数据)
chown -R hadoop:hadoop $HADOOP_HOME
你可以直接贴:
jps 输出hdfs dfsadmin -report我可以帮你一行一行看 ✅