温馨提示×

Hadoop在Ubuntu上的网络配置有哪些要点

小樊
33
2025-12-10 21:35:07
栏目: 智能运维

Hadoop在Ubuntu的网络配置要点

一 基础网络与主机识别

  • 规划并固定节点IP:为 master / slave1 / slave2 分配同网段静态IP,避免DHCP导致地址漂移。Ubuntu 18.04+ 建议使用 Netplan(编辑 /etc/netplan/*.yaml,执行 sudo netplan apply);更早版本可用 /etc/network/interfaces。示例(Netplan):
    network:
      version: 2
      renderer: networkd
      ethernets:
        ens33:
          dhcp4: no
          addresses: [192.168.5.11/24]
          routes:
            - to: default
              via: 192.168.5.2
          nameservers:
            addresses: [8.8.8.8, 8.8.4.4]
    
    应用后使用 ip aping 校验连通性。
  • 正确设置主机名与域名解析:
    • 修改 /etc/hostname 为各自主机名(如 master、slave1)。
    • 所有节点统一配置 /etc/hosts,用主机名互指,避免仅依赖DNS;示例:
      192.168.5.11 master
      192.168.5.12 slave1
      192.168.5.13 slave2
      
    • 注意:避免将真实主机名映射到 127.0.0.1(如“127.0.0.1 master”),否则Hadoop会误判本机地址,影响通信。
  • 虚拟机网络选择:多节点建议使用 桥接(Bridge)NAT 并固定网段;克隆虚拟机需确保 MAC 地址唯一,防止IP冲突。

二 节点互联与安全通信

  • 配置 SSH 免密登录(Hadoop启动脚本依赖):
    • 生成密钥:ssh-keygen -t rsa
    • 本机免密:cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    • 互信分发:ssh-copy-id user@slave1ssh-copy-id user@slave2
    • 验证:ssh slave1 hostname 应无需口令返回主机名。
  • 统一时间同步:安装并启用 NTPchrony,避免节点间时间漂移导致Kerberos/安全审计异常(Hadoop虽非强依赖,但运维强烈建议)。

三 Hadoop关键网络参数配置

  • 核心服务地址(示例以主机名方式,需与 /etc/hosts 一致):
    • core-site.xmlfs.defaultFS 设为 hdfs://master:9000(或写IP)。
    • hdfs-site.xml:按需设置副本数(如 dfs.replication=3)、NameNode/DataNode 数据目录。
    • mapred-site.xmlmapreduce.framework.name 设为 yarn
    • yarn-site.xmlyarn.resourcemanager.hostname 设为 master(或RM所在主机名)。
  • 主机名一致性:上述配置中的主机名必须在所有节点的 /etc/hosts 中可解析,且与实际主机名一致,避免“能ping通但服务连不通”的情况。

四 端口与防火墙策略

  • 常见端口范围与用途(默认配置,实际以你的版本与自定义为准):
    • HDFS50070(NameNode Web UI)、50075(DataNode Web UI)、50090(SecondaryNameNode)、9000(HDFS RPC)。
    • YARN8088(ResourceManager Web UI)、8042(NodeManager Web UI)、8032(ResourceManager RPC)。
  • 防火墙放行(UFW示例):
    sudo ufw allow from 192.168.5.0/24 to any port 22,8088,8042,50070,50075,50090,8032
    sudo ufw enable
    
    云环境需在安全组同步放行对应端口与协议。

五 验证与排错清单

  • 连通性验证:
    • 节点互ping:ping masterping slave1(基于主机名)。
    • 端口可达:nc -zv master 9000nc -zv master 8088
    • 服务自检:hdfs dfsadmin -reportyarn node -list
  • 常见错误与修复:
    • UnknownHostException / Connection refused:检查 /etc/hosts 是否一致、主机名是否拼写正确、对应服务是否已启动并监听正确端口。
    • SSH 仍需密码:检查 ~/.ssh/authorized_keys 权限(600)与属主,确认 ssh-copy-id 已执行到目标节点。
    • 克隆后IP冲突:确认虚拟机 MAC 地址唯一 并重新生成静态IP。
    • 端口不通:核对防火墙/安全组策略与监听地址(是否只绑定127.0.0.1)。

0