Ubuntu与Hadoop网络配置指南
导读:Ubuntu与Hadoop网络配置指南 1. 网络接口静态IP配置 Hadoop集群需要稳定的网络环境,建议为所有节点(NameNode、DataNode、ResourceManager、NodeManager等)配置静态IP。 Ubun...
Ubuntu与Hadoop网络配置指南
1. 网络接口静态IP配置
Hadoop集群需要稳定的网络环境,建议为所有节点(NameNode、DataNode、ResourceManager、NodeManager等)配置静态IP。
- Ubuntu 18.04及以上版本:使用
ip
命令临时配置(重启失效),或编辑/etc/netplan/*.yaml
文件永久生效(如01-netcfg.yaml
)。示例配置:
应用配置:network: version: 2 ethernets: eth0: dhcp4: no 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
。 - Ubuntu 16.04及以下版本:编辑
/etc/network/interfaces
文件,添加以下内容:
重启网络:auto eth0 iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 8.8.8.8 8.8.4.4
sudo systemctl restart networking
。
2. 主机名与hosts文件映射
确保所有节点的主机名与IP地址一一对应,避免Hadoop通过主机名通信时解析失败。
- 编辑
/etc/hostname
文件,设置节点主机名(如NameNode设为master
,DataNode设为slave1
)。 - 编辑
/etc/hosts
文件,添加所有节点的IP与主机名映射(所有节点配置需一致):
保存后,可通过192.168.1.100 master 192.168.1.101 slave1 192.168.1.102 slave2
ping master
命令验证解析是否正确。
3. SSH无密码登录配置
Hadoop集群中,NameNode需要通过SSH无密码登录到所有DataNode,ResourceManager需要无密码登录到所有NodeManager。
- 生成SSH密钥对(在NameNode/ResourceManager上执行):
ssh-keygen -t rsa -P '' # 默认保存路径~/.ssh/id_rsa
- 分发公钥到所有节点:
cat ~/.ssh/id_rsa.pub | ssh user@slave1 "mkdir -p ~/.ssh & & cat > > ~/.ssh/authorized_keys" cat ~/.ssh/id_rsa.pub | ssh user@slave2 "mkdir -p ~/.ssh & & cat > > ~/.ssh/authorized_keys"
- 验证无密码登录:
ssh slave1 # 无需输入密码即可登录 ssh slave2
4. Hadoop核心网络配置文件
修改Hadoop配置文件(位于$HADOOP_HOME/etc/hadoop/
目录),确保网络相关参数正确。
- core-site.xml:指定HDFS的默认文件系统地址(NameNode的IP/主机名及端口):
< configuration> < property> < name> fs.defaultFS< /name> < value> hdfs://master:9000< /value> < !-- 替换为NameNode的实际主机名/IP --> < /property> < /configuration>
- hdfs-site.xml:配置HDFS副本数(生产环境建议3)及数据存储目录:
< configuration> < property> < name> dfs.replication< /name> < value> 3< /value> < /property> < property> < name> dfs.namenode.name.dir< /name> < value> /opt/hadoop/namenode< /value> < !-- NameNode元数据存储路径 --> < /property> < property> < name> dfs.datanode.data.dir< /name> < value> /opt/hadoop/datanode< /value> < !-- DataNode数据存储路径 --> < /property> < /configuration>
- yarn-site.xml:配置ResourceManager主机名及Shuffle服务:
< configuration> < property> < name> yarn.resourcemanager.hostname< /name> < value> master< /value> < !-- 替换为ResourceManager的实际主机名/IP --> < /property> < property> < name> yarn.nodemanager.aux-services< /name> < value> mapreduce_shuffle< /value> < /property> < /configuration>
- mapred-site.xml(若未创建,可复制
mapred-site.xml.template
):指定MapReduce框架为YARN:< configuration> < property> < name> mapreduce.framework.name< /name> < value> yarn< /value> < /property> < /configuration>
5. 防火墙端口开放
Hadoop需要开放多个端口用于节点间通信,需配置防火墙允许这些端口的流量。
- Ubuntu(ufw):允许常用Hadoop端口(如HDFS、YARN):
sudo ufw allow 9000/tcp # HDFS NameNode默认端口 sudo ufw allow 50070/tcp # HDFS Web UI sudo ufw allow 8088/tcp # YARN ResourceManager Web UI sudo ufw allow 50010/tcp # DataNode数据传输端口 sudo ufw allow 50020/tcp # DataNode IPC端口 sudo ufw enable # 启用防火墙
- CentOS(firewalld):
sudo firewall-cmd --permanent --add-port=9000/tcp sudo firewall-cmd --permanent --add-port=50070/tcp sudo firewall-cmd --permanent --add-port=8088/tcp sudo firewall-cmd --permanent --add-port=50010/tcp sudo firewall-cmd --permanent --add-port=50020/tcp sudo firewall-cmd --reload
6. 格式化HDFS与启动集群
- 格式化HDFS:首次启动集群前,需格式化NameNode(会清除原有数据,仅第一次执行):
hdfs namenode -format
- 启动Hadoop集群:
start-dfs.sh # 启动HDFS(NameNode、DataNode) start-yarn.sh # 启动YARN(ResourceManager、NodeManager)
- 验证集群状态:
- 查看HDFS节点列表:
hdfs dfsadmin -report
- 查看YARN节点列表:
yarn node -list
- 访问Web UI:浏览器输入
http://master:50070
(HDFS)或http://master:8088
(YARN)。
- 查看HDFS节点列表:
7. 常见问题排查
- 节点间无法ping通:检查网络接口配置、IP地址是否冲突、网线连接是否正常。
- SSH登录失败:确认公钥已正确复制到目标节点的
~/.ssh/authorized_keys
文件,且文件权限为600
(chmod 600 ~/.ssh/authorized_keys
)。 - HDFS无法启动:检查
core-site.xml
中的fs.defaultFS
配置是否正确,NameNode数据目录(dfs.namenode.name.dir
)是否存在且具备读写权限。 - YARN无法提交任务:检查
yarn-site.xml
中的yarn.resourcemanager.hostname
配置,ResourceManager服务是否正常启动(jps
命令查看是否有ResourceManager
进程)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu与Hadoop网络配置指南
本文地址: https://pptw.com/jishu/716581.html