我在Ubuntu上的 3个虚拟机上安装了hadoop 3.1.1。当我运行 hdfs namenode -format 和start-all.sh时, jps 可以在我的主节点和两个从节点上正常工作。
但是,使用命令 hdfs dfsadmin -report ,我只能看到一个活动数据节点(当我检查master:50070或8088时,得到的结果相同)。
我尝试按以下方式禁用防火墙: ufw disable ,但是它不能解决问题。这三台机器可以通过 ping 和 ssh 相互连接(无需passwd)。我还删除了具有datanode和namenode文件夹的hadoop tmp文件夹,但效果不佳。日志文件中也没有未显示任何问题。
您是否有任何解决方案来获取三个实时数据节点而不是一个?谢谢。
这些是我的配置文件:
yarn-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>
core-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
答案 0 :(得分:0)
我找到了解决方案。问题是防火墙。但是“ 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