Debian上Hadoop故障排查步骤有哪些
导读:Debian上Hadoop故障排查步骤 一 快速定位流程 查看进程:运行jps,核对是否存在NameNode、DataNode、ResourceManager、NodeManager等关键进程,缺失即定位到对应组件异常。 查看日志:到**...
Debian上Hadoop故障排查步骤
一 快速定位流程
- 查看进程:运行jps,核对是否存在NameNode、DataNode、ResourceManager、NodeManager等关键进程,缺失即定位到对应组件异常。
- 查看日志:到**$HADOOP_HOME/logs目录,用tail -f *.log或grep “ERROR” *.log聚焦最近报错,优先看以.log**结尾的文件(启动脚本提示的.out只是重定向,详细错误在.log)。
- 检查配置:核对core-site.xml、hdfs-site.xml、mapred-site.xml/yarn-site.xml与hadoop-env.sh中的关键项(如JAVA_HOME、fs.defaultFS、dfs.datanode.data.dir、yarn.resourcemanager.hostname等)。
- 验证网络:节点间执行ping < IP/主机名> ;必要时用ssh < 节点> 测试免密登录;排查/etc/hosts与DNS解析是否一致;检查iptables/ufw是否放行相关端口。
- 资源与系统:用top、iostat -x 1、vmstat 1观察CPU、内存、磁盘IO;查看**/var/log/syslog、dmesg、journalctl -xe**获取系统级错误。
- Web UI:访问http://< NameNode_IP> :50070(HDFS NameNode)与http://< RM_IP> :8088(YARN ResourceManager)查看集群健康与任务状态。
二 常见故障与修复要点
- 环境类
- “jps: command not found”:未正确设置JAVA_HOME或未把**$JAVA_HOME/bin加入PATH**;在**~/.bashrc或/etc/profile**中导出变量并
source使其生效。 - Hadoop脚本找不到或Java不匹配:在hadoop-env.sh中显式设置JAVA_HOME,确保与Hadoop版本兼容。
- “jps: command not found”:未正确设置JAVA_HOME或未把**$JAVA_HOME/bin加入PATH**;在**~/.bashrc或/etc/profile**中导出变量并
- 配置类
- “Could not resolve hostname”:检查**/etc/hosts主机名与IP映射、环境变量(如HADOOP_HOME**)及本机主机名配置。
- 首次部署或元数据异常:按需执行hdfs namenode -format(仅在首次或明确数据可丢弃时执行,避免数据丢失)。
- 网络与SSH类
- 节点间不通或SSH失败:核对ping、ssh连通性,排查防火墙/安全组策略,统一**/etc/hosts解析,确保SSH免密**配置正确。
- 进程与数据目录类
- DataNode反复退出或无法注册:检查dfs.datanode.data.dir目录权限/磁盘空间;必要时清理DataNode数据目录后重启(会丢数据,谨慎)。
- 日志与告警类
- 大量“WARN util.NativeCodeLoader: Unable to load native-hadoop library …”:为兼容性提示,通常可忽略,不影响功能。
三 关键端口与连通性检查
- 常用端口与用途
- 50070:HDFS NameNode Web UI
- 50075:DataNode Web UI
- 50090:SecondaryNameNode Web UI
- 8088:YARN ResourceManager Web UI
- 9000:HDFS RPC(fs.defaultFS常用端口)
- 50010/50020:DataNode数据传输端口
- 19888:MapReduce JobHistory Server
- 快速自检命令
- 端口连通性:
nc -vz < IP> < 端口>或telnet < IP> < 端口> - 本机监听:
netstat -tulpen | grep < 端口> - 防火墙放行(示例):
sudo ufw allow 50070,8088,9000,50010,50020,50075,50090,19888/tcp - 主机名解析:
nslookup < 主机名>或getent hosts < 主机名> - 节点间SSH:
ssh < 用户名> @< 节点IP>(应免密直达)
- 端口连通性:
四 服务重启与变更控制
- 重启顺序建议:先停YARN再停HDFS,启动则相反。
- 停止:
./sbin/stop-yarn.sh→./sbin/stop-dfs.sh - 启动:
./sbin/start-dfs.sh→./sbin/start-yarn.sh
- 停止:
- 如仍异常,可全停后全启:
./stop-all.sh→./start-all.sh(脚本存在与否取决于发行与版本)。 - 变更前务必备份重要数据与配置,变更后在Web UI与日志中复核状态。
五 性能与稳定性排查
- 资源瓶颈:用top、iostat -x 1、vmstat 1识别CPU、内存、IO瓶颈;必要时扩容或调整YARN容器资源。
- 系统健康:查看**/var/log/syslog、dmesg、journalctl -xe**排查内核/驱动/磁盘错误。
- 版本与依赖:保持Debian与JDK/Hadoop版本兼容,必要时升级或回滚已知问题版本。
- 监控与告警:结合Ambari、Ganglia、Nagios或Cloudera Manager建立持续监控与阈值告警。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian上Hadoop故障排查步骤有哪些
本文地址: https://pptw.com/jishu/769066.html
