问题标签 [datanode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
430 浏览

hadoop - 一个datanode在hdfs中的使用率达到100%?平衡器不工作

我对 Hadoop hdfs 有一些问题。(Hadoop 2.7.3)我有 2 个名称节点(1 个活动,1 个备用)和 3 个数据节点。复制因子为 3。

使用的磁盘是 51T 的-df命令。

但是用-du命令的磁盘大约是3T。

我发现其中一个数据节点达到了 100% 的使用率。

我的问题是

  1. 我试着做balancer。它似乎可以工作,但所有迭代都没有移动任何块,并且它存在没有任何错误。如何平衡数据节点的磁盘使用量?为什么hdfs balancer命令不移动任何块?
  1. 虽然datanode2已满,但节点的状态显示为“In-service”或“Live”或“Normal”。当然,在这种情况下,我无法在 hdfs 中写入新数据。

  2. 结果-df和结果-du相差太大。为什么?

0 投票
1 回答
538 浏览

hadoop - 在 Hadoop 3.1.0 中,namenode 工作但 datanode 不工作

Hadoop 3.1.0 namenode中工作但datanode不工作显示以下消息:

0 投票
1 回答
182 浏览

hadoop - Datanode 没有启动。Namenode ,二级名称节点一切正常启动

我收到如上所示的错误。我尝试了很多解决方案,但似乎没有任何效果。namenode 以前也没有运行,但问题是由于权限问题,现在已解决。我第一次使用 hadoop,任何帮助将不胜感激

0 投票
1 回答
84 浏览

hadoop - hadoop中某些数据节点的IP映射错误

我在使用本地域配置的 7 个节点上使用/etc/hosts. 看起来像这样

现在的问题是,在某些节​​点上, 的映射错误hadoop-slave-1,即某些节点hadoop-slave-1映射到1.2.3.12而不是1.2.3.4。Namenode 具有正确的映射,因此数据节点在 namenode UI 中显示良好。

问题是,只更改/etc/hosts文件并启动服务会好吗?我认为它可能会破坏与hadoop-slave-1节点相关的一些特定块。

我可以想到两种方法来解决这个问题:

  1. 修复损坏节点中的 /etc/hosts 文件并重新启动服务。但我不确定这是否会损坏块。这个假设准确吗?

  2. 我们可以hadoop-slave-1暂时从集群中移除这台服务器并重新平衡 Hadoop 集群以在剩余的 6 个节点之间分配全部数据,然后再次将服务器重新添加到集群中并将数据重新平衡到 7 个节点。但是这样做的问题是,集群中包含的数据非常大,可能会产生问题,并且重新平衡数据将是一项繁重的工作,会对名称节点服务器造成压力,并可能导致堆问题。

在这种情况下还有其他解决方案吗?另外,您建议使用哪种工具或实用程序将数据复制到另一个 hadoop 集群?

非常感谢帮助!

0 投票
0 回答
98 浏览

java - 无法从 Java 应用程序访问 HDFS

我有一个 clouder 快速启动容器,我尝试使用 java 应用程序获取 HDFS 下的文件列表;

当我运行该代码时,我在控制台中收到以下消息

hadoop下的hosts文件

0 投票
0 回答
126 浏览

hadoop - Hadoop namenode 和辅助 nemenode 概念

我想分享我们的所有情况。

我们有 Hadoop 集群,其中包含 2 个名称节点、一个活动名称节点和一个备用名称节点。

一段时间后,我们注意到活动名称节点和辅助名称节点已关闭 3 天。

查看名称节点日志文件后,我们看到辅助名称节点已关闭 1 个月,而活动名称节点已关闭几个小时。

我们在活动名称节点日志中看到的另一件有趣的事情是名称节点堆大小问题,也许你们中的一些人知道辅助名称节点实际上支持活动名称节点,但辅助名称节点并没有取代活动名称节点.

因此我们猜测active name node失败的原因是active name node没有从secondary name node得到数据确认,可能是active name node的JVM消耗高的原因。

在此处输入图像描述

我将感谢 stack-overflow 用户的帮助,以及您对我们案例的看法

0 投票
0 回答
155 浏览

apache-spark - AWS EMR Spark 正在工作节点上创建文件

我在 EMR 上使用 spark 来处理数据。基本上,我从 AWS S3 读取数据并进行转换和后转换,我正在将数据加载/写入到 oracle 表中。

最近我们发现 hdfs(/mnt/hdfs) 利用率过高。

我没有向 hdfs(/mnt/hdfs) 写入任何数据,但是 spark 正在创建块并将数据写入其中。我们将在内存中进行所有操作。

为什么 Spark 仍在向数据节点写入数据?

将数据写入数据节点(HDFS)的任何特定操作?

这是创建的 hdfs 目录。

*15.4G /mnt/hdfs/current/BP-6706123673-10.xx.xx.xxx-1588026945812/current/finalized/subdir1

129G /mnt/hdfs/current/BP-6706123673-10.xx.xx.xxx-1588026945812/current/finalized

129G /mnt/hdfs/current/BP-6706123673-10.xx.xx.xxx-1588026945812/current

129G /mnt/hdfs/current/BP-6706123673-10.xx.xx.xxx-1588026945812

129G /mnt/hdfs/当前 129G /mnt/hdfs*

0 投票
1 回答
58 浏览

hadoop - 之前停止运行(和工作)实例后无法启动 Hadoop,因为 Datanode 说目录已锁定

我有一个运行 Hadoop 1.2.1 的集群,上面有 Giraph。服务器运行正常,但是当我停止它时,我无法让它再次运行。在 datanode 日志中,我收到以下错误: ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Cannot lock storage /pathToFolder/data/datanode. 该目录已被锁定。

我尝试了许多在网上找到的解决方案:

  1. 检查文件夹的权限。
  2. 检查名称节点和数据节点的版本文件的相同版本。
  3. 检查配置文件(core-site、hdfs-site、mapred-site、master、slave...)
  4. 删除/更改名称节点和数据节点数据文件夹
  5. 删除 hadoop 临时文件

底线是,一切似乎都很好,但仍然无法启动数据节点。数据节点的完整日志文件如下:

0 投票
1 回答
163 浏览

apache-spark - hadoop集群+任何禁用spark应用程序在特定数据节点上运行的方法

我们有 Hadoop 集群(HDP 2.6.5带有 ambari 的集群,有 25 个数据节点机器)

我们正在使用火花流应用程序(spark 2.1运行Hortonworks 2.6.x

目前的情况是 Spark 流应用程序运行在所有 datanodes 机器上

但是现在我们希望 spark 流应用程序只在第一10 datanodes台机器上运行

因此其他最后一15 datanodes台机器将受到限制,并且 spark 应用程序将仅在第一10 datanodes台机器上运行

这种情况可以通过 ambary 功能或其他方法来完成吗?

例如,我们找到了 - https://docs.cloudera.com/HDPDocuments/HDP2/HDP-2.3.2/bk_yarn_resource_mgt/content/configuring_node_labels.html

http://crazyadmins.com/configure-node-labels-on-yarn/

但不确定 Node Labes 是否可以帮助我们

0 投票
1 回答
281 浏览

hadoop - HDFS 集群中的 HDFS 副本 + 和最小数据节点数

我们有只有 2 个数据节点机器的 Hadoop 集群

HDFS配置中,我们定义了Block replicationto3

所以

可以吗?定义Block replication=3,当我们在集群中只有两个数据节点时

根据我的理解,当我们replication=3在集群中有 2 个数据节点机器时定义 BlockHDFS意味着一台机器应该有 2 个副本,而另一台机器应该有一个副本,我在这里正确吗?