gpt4 book ai didi

linux - 当有可用空间时,Hadoop No space left on device 错误

转载 作者:太空宇宙 更新时间:2023-11-04 12:21:29 24 4
gpt4 key购买 nike

我有 5 台 Linux 机器集群。有 3 个数据节点和 1 个主节点。现在每个数据节点上大约有 50% 的 hdfs 存储可用。但是我运行了一个 mapreduce 作业,失败并出现以下错误

2017-08-21 17:58:47,627 WARN org.apache.hadoop.hdfs.DFSClient: Error Recovery for blk_6835454799524976171_3615612 bad datanode[0] 10.11.1.42:50010
2017-08-21 17:58:47,628 WARN org.apache.hadoop.hdfs.DFSClient: Error Recovery for block blk_6835454799524976171_3615612 in pipeline 10.11.1.42:50010, 10.11.1.43:50010: bad datanode 10.11.1.42:50010
2017-08-21 17:58:51,785 ERROR org.apache.hadoop.mapred.Child: Error in syncLogs: java.io.IOException: No space left on device

在每个系统上 df -h 给出以下信息

Filesystem               Size  Used Avail Use% Mounted on
devtmpfs 5.9G 0 5.9G 0% /dev
tmpfs 5.9G 84K 5.9G 1% /dev/shm
tmpfs 5.9G 9.1M 5.9G 1% /run
tmpfs 5.9G 0 5.9G 0% /sys/fs/cgroup
/dev/mapper/centos-root 50G 6.8G 44G 14% /
/dev/sdb 1.8T 535G 1.2T 31% /mnt/11fd6fcc-1f87-4f1e-a53c-54cc7117759c
/dev/mapper/centos-home 412G 155G 59M 100% /home
/dev/sda1 494M 348M 147M 71% /boot
tmpfs 1.2G 16K 1.2G 1% /run/user/42
tmpfs 1.2G 0 1.2G 0% /run/user/1000

从上面可以清楚地看出,我的 sdb dicsk (SDD) 只使用了 31%,但 centos-home 是 100%。当有足够的 HDFS 可用时,hadoop 在 mapreduce 作业中使用本地文件系统?哪里有问题?我在谷歌上搜索并发现了很多这样的问题,但没有人涵盖我的情况。

最佳答案

syncLogs 不使用 HDFS,它写入 hadoop.log.dir 所以如果您使用的是 MapReduce,请在/etc/hadoop/conf/taskcontroller.cfg 中查找 hadoop.log.dir 的值。

如果您使用的是 YARN,请在 yarn-site.xml 中查找 yarn.nodemanager.log-dirs 的值。

其中一个应该指向您正在编写日志的位置。一旦您找出哪个文件系统有问题,您就可以从那里释放空间。

要记住的另一件事是,如果磁盘上的 inode 已用完,您可能会收到“设备上没有剩余空间”。 df -i 会显示这个。

关于linux - 当有可用空间时,Hadoop No space left on device 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45812464/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com