首页主机资讯Ubuntu Hadoop 网络配置怎么做

Ubuntu Hadoop 网络配置怎么做

时间2025-10-21 14:33:03发布访客分类主机资讯浏览224
导读:Ubuntu环境下Hadoop网络配置详细步骤 1. 配置Ubuntu静态IP地址 Hadoop集群需要稳定的网络环境,建议为所有节点(NameNode、DataNode、ResourceManager、NodeManager等)配置静态I...

Ubuntu环境下Hadoop网络配置详细步骤

1. 配置Ubuntu静态IP地址

Hadoop集群需要稳定的网络环境,建议为所有节点(NameNode、DataNode、ResourceManager、NodeManager等)配置静态IP。

  • 查看网络接口名称:运行ip a命令,确认网络接口(如ens33,不同系统可能为eth0)。
  • 编辑Netplan配置文件:Ubuntu 18.04及以上版本使用Netplan管理网络,文件路径通常为/etc/netplan/01-netcfg.yaml(备份原文件后编辑)。
    示例配置(替换为实际IP、网关、DNS):
    network:
      version: 2
      ethernets:
        ens33:
          addresses: ["192.168.1.100/24"]  # 静态IP及子网掩码
          gateway4: "192.168.1.1"          # 网关地址
          nameservers:
            addresses: ["8.8.8.8", "8.8.4.4"]  # DNS服务器
    
  • 应用配置:运行sudo netplan apply使设置生效,验证IP是否正确:ip a | grep ens33

2. 配置主机名与IP映射(/etc/hosts文件)

Hadoop集群节点间通过主机名通信,需将各节点的IP与主机名映射写入所有节点的/etc/hosts文件。

  • 编辑hosts文件
    sudo nano /etc/hosts
    
  • 添加映射内容(示例,替换为实际IP和主机名):
    192.168.1.100 namenode
    192.168.1.101 datanode1
    192.168.1.102 datanode2
    192.168.1.103 resourcemanager
    192.168.1.104 nodemanager
    
  • 保存并退出:确保所有节点的/etc/hosts文件内容一致。

3. 配置SSH无密码登录

Hadoop集群节点间需要频繁通信(如NameNode与DataNode、ResourceManager与NodeManager),配置SSH无密码登录可避免重复输入密码。

  • 生成SSH密钥对(在所有节点执行):
    ssh-keygen -t rsa  # 默认保存路径~/.ssh/id_rsa
    
  • 复制公钥到其他节点(以namenode为例,向datanode1、datanode2等复制):
    ssh-copy-id namenode@192.168.1.100  # 将本机公钥复制到namenode
    ssh-copy-id datanode1@192.168.1.101 # 复制到datanode1
    ssh-copy-id datanode2@192.168.1.102 # 复制到datanode2
    
  • 验证无密码登录
    ssh namenode  # 无需输入密码即可登录
    ssh datanode1
    

4. 配置Hadoop核心网络参数

修改Hadoop配置文件,指定集群通信的IP、端口及副本策略。

  • 进入Hadoop配置目录(假设Hadoop安装在/usr/local/hadoop):
    cd /usr/local/hadoop/etc/hadoop
    
  • 编辑core-site.xml(指定HDFS默认文件系统和NameNode地址):
    <
        configuration>
        
      <
        property>
        
        <
        name>
        fs.defaultFS<
        /name>
        
        <
        value>
        hdfs://namenode:9000<
        /value>
         <
        !-- 替换为namenode的实际主机名 -->
        
      <
        /property>
        
    <
        /configuration>
        
    
  • 编辑hdfs-site.xml(配置HDFS副本数、NameNode/DataNode数据目录):
    <
        configuration>
        
      <
        property>
        
        <
        name>
        dfs.replication<
        /name>
        
        <
        value>
        3<
        /value>
         <
        !-- 副本数,根据集群规模调整 -->
        
      <
        /property>
        
      <
        property>
        
        <
        name>
        dfs.namenode.name.dir<
        /name>
        
        <
        value>
        /usr/local/hadoop/data/namenode<
        /value>
         <
        !-- NameNode元数据存储路径 -->
        
      <
        /property>
        
      <
        property>
        
        <
        name>
        dfs.datanode.data.dir<
        /name>
        
        <
        value>
        /usr/local/hadoop/data/datanode<
        /value>
         <
        !-- DataNode数据存储路径 -->
        
      <
        /property>
        
    <
        /configuration>
        
    
  • 编辑yarn-site.xml(配置ResourceManager地址和Shuffle服务):
    <
        configuration>
        
      <
        property>
        
        <
        name>
        yarn.resourcemanager.hostname<
        /name>
        
        <
        value>
        resourcemanager<
        /value>
         <
        !-- 替换为resourcemanager的实际主机名 -->
        
      <
        /property>
        
      <
        property>
        
        <
        name>
        yarn.nodemanager.aux-services<
        /name>
        
        <
        value>
        mapreduce_shuffle<
        /value>
         <
        !-- MapReduce Shuffle服务 -->
        
      <
        /property>
        
    <
        /configuration>
        
    
  • 编辑mapred-site.xml(指定MapReduce框架为YARN):
    <
        configuration>
        
      <
        property>
        
        <
        name>
        mapreduce.framework.name<
        /name>
        
        <
        value>
        yarn<
        /value>
        
      <
        /property>
        
    <
        /configuration>
        
    

5. 配置防火墙允许Hadoop端口

Hadoop需要开放多个端口用于节点间通信,需配置防火墙(如ufw)允许这些端口。

  • 查看防火墙状态
    sudo ufw status
    
  • 允许常用端口(若未开启防火墙,可跳过此步):
    sudo ufw allow 9000/tcp    # NameNode RPC端口
    sudo ufw allow 50070/tcp   # HDFS Web UI端口
    sudo ufw allow 50075/tcp   # DataNode Web UI端口
    sudo ufw allow 8088/tcp    # YARN ResourceManager Web UI端口
    sudo ufw allow 8030/tcp    # YARN ResourceManager调度端口
    sudo ufw allow 8040/tcp    # NodeManager Web UI端口
    sudo ufw allow 8042/tcp    # NodeManager Web UI端口
    sudo ufw enable            # 开启防火墙(可选)
    

6. 格式化HDFS并启动集群

首次配置Hadoop需格式化NameNode(会清除原有数据,仅第一次执行),然后启动集群服务。

  • 格式化NameNode(在namenode节点执行):
    hdfs namenode -format
    
  • 启动HDFS
    start-dfs.sh
    
  • 启动YARN
    start-yarn.sh
    
  • 验证集群状态
    • 查看NameNode和DataNode状态:hdfs dfsadmin -report
    • 查看ResourceManager和NodeManager状态:yarn node -list
    • 访问Web UI:浏览器输入http://namenode:9000(HDFS)、http://resourcemanager:8088(YARN)。

常见问题排查

  • 节点无法连通:检查/etc/hosts映射是否正确,防火墙是否阻止端口,网络接口IP是否配置正确。
  • SSH登录失败:确认公钥已正确复制到目标节点,~/.ssh目录权限为700,~/.ssh/authorized_keys权限为600。
  • HDFS格式化失败:删除NameNode和DataNode的数据目录(如/usr/local/hadoop/data/namenode),重新格式化。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu Hadoop 网络配置怎么做
本文地址: https://pptw.com/jishu/731162.html
MinIO在Ubuntu上的网络设置 Ubuntu MinIO日志管理技巧

游客 回复需填写必要信息