Hadoop 集群扩容新增节点操作文档

Hadoop 集群扩容新增节点操作文档


一、前期准备

1. 环境检查(所有新节点)

确保 JDK 安装:

bash 复制代码
java -version

确保 Hadoop 安装:

bash 复制代码
hadoop version

添加主机名映射(所有节点):

bash 复制代码
cat >> /etc/hosts <<EOF
192.168.1.10 master
192.168.1.11 node01
192.168.1.12 node02
192.168.1.13 node03  # 新增节点
EOF

测试 SSH 免密(主节点执行):

bash 复制代码
ssh node03 hostname

2. Hadoop 安装与配置同步

将 Hadoop 安装包拷贝至新节点:

bash 复制代码
scp -r /opt/hadoop user@node03:/opt/

同步 Hadoop 配置文件:

bash 复制代码
scp -r $HADOOP_HOME/etc/hadoop user@node03:$HADOOP_HOME/etc/

二、修改主节点配置

1. 添加到 workers 文件(或 slaves)

说明:workers 文件是作为批量远程启动服务的清单使用,一般适用于远程批量启动多个节点服务。

bash 复制代码
echo "node03" >> $HADOOP_HOME/etc/hadoop/workers

2. 若启用了白名单,修改 dfs.hosts

bash 复制代码
echo "node03" >> $HADOOP_HOME/etc/hadoop/dfs.hosts

三、启动新节点服务

1. 新节点执行以下命令:

启动 DataNode:

bash 复制代码
$HADOOP_HOME/sbin/hadoop-daemon.sh start datanode

启动 NodeManager:

bash 复制代码
$HADOOP_HOME/sbin/yarn-daemon.sh start nodemanager

2. 可选:主节点上运行 balancer(平衡数据)

bash 复制代码
hdfs balancer -threshold 10

四、验证与测试

1. 查看 HDFS 节点状态:

bash 复制代码
hdfs dfsadmin -report

或访问:

复制代码
http://<namenode_host>:9870/dfshealth.html

2. 查看 YARN 节点状态:

访问:

复制代码
http://<resourcemanager_host>:8088/cluster/nodes

3. 测试任务提交:

bash 复制代码
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar pi 5 100

五、扩容自动化脚本(示例)

auto_add_node.sh

bash 复制代码
#!/bin/bash
# 用于新节点自动加入 Hadoop 集群

HADOOP_HOME=/opt/hadoop
NEW_NODE=$1

echo "[INFO] 添加新节点 $NEW_NODE"

# 同步配置文件
scp -r $HADOOP_HOME/etc/hadoop $NEW_NODE:$HADOOP_HOME/etc/

# 在主节点添加到 workers 列表
echo "$NEW_NODE" >> $HADOOP_HOME/etc/hadoop/workers

# 远程启动服务
ssh $NEW_NODE "$HADOOP_HOME/sbin/hadoop-daemon.sh start datanode"
ssh $NEW_NODE "$HADOOP_HOME/sbin/yarn-daemon.sh start nodemanager"

echo "[INFO] 启动完成,验证状态请访问 ResourceManager 和 NameNode Web 页面"

执行方式:

bash 复制代码
chmod +x auto_add_node.sh
./auto_add_node.sh node03
相关推荐
mykyle21 分钟前
Elasticsearch-ik分析器
大数据·elasticsearch·jenkins
itLaity24 分钟前
基于Kafka实现简单的延时队列
spring boot·分布式·kafka
qq_5298353534 分钟前
Zookeeper的简单了解
分布式·zookeeper·云原生
weixin_lynhgworld1 小时前
淘宝扭蛋机小程序系统开发:重塑电商互动模式
大数据·小程序
smileNicky2 小时前
RabbitMQ有多少种Exchange?
分布式·rabbitmq
你我约定有三2 小时前
RabbitMQ--消息丢失问题及解决
java·开发语言·分布式·后端·rabbitmq·ruby
Java初学者小白2 小时前
秋招Day19 - 分布式 - 分布式事务
java·分布式
RPA+AI十二工作室4 小时前
影刀RPA_Temu关键词取数_源码解读
大数据·自动化·源码·rpa·影刀
程序员小羊!4 小时前
Zookeeper 3.6.3【详细技术讲解】整
分布式·zookeeper·云原生
Sui_Network4 小时前
探索 Sui 上 BTCfi 的各类资产
大数据·人工智能·科技·游戏·区块链