hadoop分布式中某个 节点报错的解决案例

前言

在分布式节点中,发现有个节点显示不可用状态,因此需要紧急修复。

hadoop版本

目前这套集群hadoop的版本如下:

集群报错详细日志:

1/1 local-dirs are bad: /kkb/install/hadoop-2.6.0-cdh5.14.2/hadoopDatas/tempDatas/nm-local-dir; 1/1 log-dirs are b

报错分析

通过分析发现,应该是这个节点的磁盘空间满了。

这条错误信息指出 Hadoop 集群的 NodeManager 无法写入其配置的本地目录和日志目录。这通常发生在 Hadoop 集群启动时,NodeManager 尝试初始化时。错误的原因是指定的本地目录 (`local-dirs`) 和日志目录 (`log-dirs`) 不可用或不可写。

可能的原因包括:

  1. **目录不存在**:配置的路径可能不存在。

  2. **权限问题**:运行 Hadoop 的用户可能没有权限写入这些目录。

  3. **磁盘空间不足**:指定的磁盘可能已满。

  4. **SELinux 策略**:如果你的系统使用 SELinux,可能需要调整安全上下文。

  5. **目录损坏**:文件系统损坏或目录结构损坏。

解决步骤:

  1. **检查目录是否存在**:

```sh

ls -ld /kkb/install/hadoop-2.6.0-cdh5.14.2/hadoopDatas/tempDatas/nm-local-dir

ls -ld /kkb/install/hadoop-2.6.0-cdh5.14.2/logs/userlogs

```

  1. **创建缺失的目录**:

如果目录不存在,你需要手动创建它们:

```sh

mkdir -p /kkb/install/hadoop-2.6.0-cdh5.14.2/hadoopDatas/tempDatas/nm-local-dir

mkdir -p /kkb/install/hadoop-2.6.0-cdh5.14.2/logs/userlogs

```

  1. **检查权限**:

确保运行 Hadoop 的用户(例如 `hadoop` 用户)对这些目录具有写权限:

```sh

chown -R hadoop:hadoop /kkb/install/hadoop-2.6.0-cdh5.14.2/hadoopDatas/tempDatas/

chown -R hadoop:hadoop /kkb/install/hadoop-2.6.0-cdh5.14.2/logs/

```

  1. **检查磁盘空间**:

使用 `df -h` 检查磁盘空间是否已满。

  1. **调整 SELinux**:

如果你的系统使用 SELinux,可能需要调整策略或更改目录的安全上下文:

```sh

chcon -R -t hadoop_var_lib_t /kkb/install/hadoop-2.6.0-cdh5.14.2/hadoopDatas/tempDatas/

chcon -R -t hadoop_log_t /kkb/install/hadoop-2.6.0-cdh5.14.2/logs/

```

  1. **检查 Hadoop 配置**:

确保 `hdfs-site.xml` 和 `core-site.xml` 中配置的本地目录和日志目录路径正确无误。

  1. **格式化 NameNode(如果必要)**:

如果 NameNode 损坏,可能需要格式化。但这将删除所有 HDFS 数据,因此只有在安全模式或测试环境中才考虑执行此操作。

  1. **重启 Hadoop 服务**:

在解决了目录问题后,尝试重启 Hadoop 服务,特别是 NodeManager。

  1. **查看日志文件**:

检查 Hadoop 的日志文件,特别是 `hadoop-*.log` 文件,以获取更多错误信息。

  1. **联系管理员**:

如果你没有足够的权限或不熟悉系统,联系系统管理员来帮助解决问题。

请在进行任何重要更改之前备份重要数据,并确保你具有足够的系统管理知识或获得专业帮助。

通过50070端口进去发现确实是因为节点01的空间即将耗尽。

相关推荐
武子康1 小时前
大数据-243 离线数仓 - 实战电商核心交易增量导入(DataX - HDFS - Hive 分区
大数据·后端·apache hive
代码匠心2 天前
从零开始学Flink:Flink SQL四大Join解析
大数据·flink·flink sql·大数据处理
武子康3 天前
大数据-242 离线数仓 - DataX 实战:MySQL 全量/增量导入 HDFS + Hive 分区(离线数仓 ODS
大数据·后端·apache hive
SelectDB4 天前
易车 × Apache Doris:构建湖仓一体新架构,加速 AI 业务融合实践
大数据·agent·mcp
武子康4 天前
大数据-241 离线数仓 - 实战:电商核心交易数据模型与 MySQL 源表设计(订单/商品/品类/店铺/支付)
大数据·后端·mysql
茶杯梦轩4 天前
从零起步学习RabbitMQ || 第三章:RabbitMQ的生产者、Broker、消费者如何保证消息不丢失(可靠性)详解
分布式·后端·面试
IvanCodes4 天前
一、消息队列理论基础与Kafka架构价值解析
大数据·后端·kafka
武子康5 天前
大数据-240 离线数仓 - 广告业务 Hive ADS 实战:DataX 将 HDFS 分区表导出到 MySQL
大数据·后端·apache hive
回家路上绕了弯6 天前
深入解析Agent Subagent架构:原理、协同逻辑与实战落地指南
分布式·后端
字节跳动数据平台6 天前
5000 字技术向拆解 | 火山引擎多模态数据湖如何释放模思智能的算法生产力
大数据