温馨提示×

Ubuntu Hadoop 网络设置怎么做

小樊
52
2025-09-19 08:42:54
栏目: 智能运维

Ubuntu环境下Hadoop网络设置步骤

1. 配置静态IP地址(Ubuntu 18.04及以上版本)

Ubuntu使用netplan工具管理网络配置,需编辑对应YAML文件(如/etc/netplan/01-netcfg.yaml)。

  • 备份原文件:sudo cp /etc/netplan/01-netcfg.yaml /etc/netplan/01-netcfg.yaml.bak
  • 编辑文件(以ens33网卡为例,需替换为实际接口名,可通过ip a命令查看):
    network: version: 2 renderer: networkd ethernets: ens33: dhcp4: no # 关闭DHCP,使用静态IP addresses: ["192.168.1.100/24"] # 设置静态IP及子网掩码(/24表示255.255.255.0) gateway4: "192.168.1.1" # 设置默认网关(与物理网络一致) nameservers: addresses: ["8.8.8.8", "8.8.4.4"] # 设置DNS服务器(可选,但建议配置) 
  • 应用配置:sudo netplan apply(生效前会自动验证语法)。

2. 配置主机名与hosts文件映射

  • 设置主机名:编辑/etc/hostname文件,将默认主机名(如ubuntu)改为集群节点标识(如hadoop-masterhadoop-slave1),保存后重启生效或运行sudo hostnamectl set-hostname hadoop-master立即生效。
  • 配置hosts映射:编辑/etc/hosts文件,添加集群所有节点的IP与主机名对应关系(避免依赖DNS):
    192.168.1.100 hadoop-master 192.168.1.101 hadoop-slave1 192.168.1.102 hadoop-slave2 
    该步骤需在所有节点上执行,确保节点间可通过主机名互相访问。

3. 配置SSH免密码登录

Hadoop集群节点间需要无密码SSH通信(如NameNode与DataNode、ResourceManager与NodeManager)。

  • 生成密钥对:在主节点(如hadoop-master)上运行ssh-keygen -t rsa,按提示回车(默认保存路径~/.ssh/id_rsa,无需设置密码)。
  • 分发公钥:将公钥复制到所有从节点(包括自身),例如:
    ssh-copy-id hadoop-master # 复制到主节点自身 ssh-copy-id hadoop-slave1 # 复制到slave1 ssh-copy-id hadoop-slave2 # 复制到slave2 
  • 验证免密登录:运行ssh hadoop-slave1,若无需输入密码即可登录,则配置成功。

4. 关闭防火墙与SELinux(可选但推荐)

  • 关闭Ubuntu防火墙:Ubuntu默认使用ufw防火墙,运行以下命令停止并禁用:
    sudo ufw disable # 停止防火墙 sudo ufw status # 验证状态(显示“inactive”即为关闭) 
  • 关闭SELinux(若系统启用):编辑/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled,然后重启系统使配置生效。

5. 验证网络连通性

  • Ping测试:在主节点上运行ping hadoop-slave1,若能收到回复则表示节点间网络连通。
  • Hadoop服务验证:启动Hadoop集群(start-dfs.shstart-yarn.sh),通过hdfs dfsadmin -report查看DataNode状态,yarn node -list查看NodeManager状态,确认服务正常运行。

注意事项

  • 确保所有节点的网络配置一致(如子网掩码、网关、DNS),避免通信问题。
  • 若使用虚拟机搭建集群,需将网络模式设置为“桥接模式”(与物理网络同一网段)或“NAT模式”(共享主机IP),并确保虚拟机网络配置与主机不冲突。
  • 静态IP地址需与物理网络规划一致,避免IP冲突。

0