Hadoop 3.1.1 仅显示一个活动数据节点
Hadoop 3.1.1 showing only one live datanode
我在 3 台虚拟机 上安装了 hadoop 3.1.1,在 Ubuntu 上安装了 VMware。当我 运行 hdfs namenode -format 和 start-all.sh 然后 jps 工作正常 在我的主节点和两个从节点上。
然而,使用命令hdfs dfsadmin -report,我可以看到只有一个活动数据节点(当我检查 master:50070 或 8088)。
我尝试如下禁用防火墙:ufw disable 但它没有解决问题。这 3 台机器可以通过 ping 和 ssh 相互连接(无需密码)。我还删除了带有 datanode 和 namenode 文件夹的 hadoop tmp 文件夹,但效果不佳。 日志文件中也没有显示任何问题。
您是否有任何解决方案来获得 三个实时数据节点而不是一个?谢谢
这些是我的配置文件:
纱-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8025</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8035</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8050</value>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop_tmp/hdfs/datanode</value>
<final>true</final>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop_tmp/hdfs/namenode</value>
<final>true</final>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>master:50070</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
核心-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000/</value>
</property>
<property>
<name>fs.default.FS</name>
<value>hdfs://master:9000/</value>
</property>
</configuration>
工人
master
slave1
slave2
我找到了解决办法。问题是防火墙。但是 "ufw" 没有帮助。我需要执行这些命令:
sudo iptables -L -v
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
我在 3 台虚拟机 上安装了 hadoop 3.1.1,在 Ubuntu 上安装了 VMware。当我 运行 hdfs namenode -format 和 start-all.sh 然后 jps 工作正常 在我的主节点和两个从节点上。
然而,使用命令hdfs dfsadmin -report,我可以看到只有一个活动数据节点(当我检查 master:50070 或 8088)。
我尝试如下禁用防火墙:ufw disable 但它没有解决问题。这 3 台机器可以通过 ping 和 ssh 相互连接(无需密码)。我还删除了带有 datanode 和 namenode 文件夹的 hadoop tmp 文件夹,但效果不佳。 日志文件中也没有显示任何问题。
您是否有任何解决方案来获得 三个实时数据节点而不是一个?谢谢
这些是我的配置文件:
纱-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8025</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:8035</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8050</value>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop_tmp/hdfs/datanode</value>
<final>true</final>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop_tmp/hdfs/namenode</value>
<final>true</final>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>master:50070</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
核心-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000/</value>
</property>
<property>
<name>fs.default.FS</name>
<value>hdfs://master:9000/</value>
</property>
</configuration>
工人
master
slave1
slave2
我找到了解决办法。问题是防火墙。但是 "ufw" 没有帮助。我需要执行这些命令:
sudo iptables -L -v
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT