在 Debian 上配置 Hadoop 网络,核心目标是:
✅ 各节点能互相通信
✅ 主机名可解析
✅ 防火墙/端口开放
✅ Hadoop 配置文件中使用正确地址
下面按 单机 / 集群 两种情况说明。
编辑:
/etc/network/interfaces
示例(Debian 11/12):
auto eth0
iface eth0 inet static
address 192.168.10.10
netmask 255.255.255.0
gateway 192.168.10.1
dns-nameservers 8.8.8.8
重启网络:
systemctl restart networking
hostnamectl set-hostname master
或从节点:
hostnamectl set-hostname slave1
所有节点都要有:
192.168.10.10 master
192.168.10.11 slave1
192.168.10.12 slave2
测试:
ping master
ping slave1
systemctl stop firewalld
systemctl disable firewalld
或(Debian 默认):
iptables -F
常用端口:
ufw allow 9000
ufw allow 50070
ufw allow 8088
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
❗ 不要用 localhost(集群会出问题)
<property>
<name>dfs.namenode.rpc-address</name>
<value>master:9000</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
slave1
slave2
Master 到所有节点:
ssh-keygen
ssh-copy-id slave1
ssh-copy-id slave2
测试:
ssh slave1
start-dfs.sh
start-yarn.sh
查看:
❌ DataNode 不启动
→ /etc/hosts 或主机名错误
❌ Connection refused
→ 防火墙 / IP 不对
❌ 只能 localhost 访问
→ 配置文件写成了 127.0.0.1
如果你告诉我:
我可以给你一份 可直接用的配置文件。