大数据(2e)Hadoop节点增删

本文详细介绍了如何在Hadoop集群中添加和移除节点,包括新节点的网络配置、软件复制、数据清理、配置修改以及节点的启动和停止。同时,对比了使用白名单和黑名单策略在节点退役过程中的差异,提供了具体的操作步骤和注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0、集群规划

服务名Hadoop102Hadoop103Hadoop104hadoop105
(新增)
HDFS:DataNode1111
HDFS:NameNode1
HDFS:SecondaryNameNode1
YARN:ResourceManager1
YARN:NodeManager1111

1、服役新节点

以下操作全在新节点上操作不用切来切去

1.1、新节点网络配置

地址IPADDR=192.168.1.105

vi /etc/sysconfig/network-scripts/ifcfg-ens33

主机名

echo hadoop105 > /etc/hostname

增加网络映射

echo "192.168.1.105 hadoop105" >> /etc/hosts
cat /etc/hosts

重启

reboot

配置免密登录:从hadoop102复制 密钥对 到hadoop105(要输yes和密码)

sudo scp -r hadoop102:/root/.ssh /root/
scp -r hadoop102:~/.ssh hadoop105:~/

1.2、复制软件

hadoop102复制Java和Hadoop及其环境变量到hadoop105

rsync -a hadoop102:$JAVA_HOME/ $JAVA_HOME/
rsync -a hadoop102:$HADOOP_HOME/ $HADOOP_HOME/
scp hadoop102:/etc/profile.d/custom.sh /etc/profile.d/
source /etc/profile.d/custom.sh

1.3、删除Hadoop的数据和日志

rm -rf $HADOOP_HOME/data
rm -rf $HADOOP_HOME/logs
rm -rf /tmp/*

1.4、修改workers并分发(非必须)

echo hadoop105 >> $HADOOP_HOME/etc/hadoop/workers
cat workers
rsync.py $HADOOP_HOME/etc/hadoop/workers

1.5、启动新节点

启动HDFSDataNode

hdfs --daemon start datanode

启动YARNNodeManager

yarn --daemon start

DataNode

新增后

NodeManager

新增后

2、删节点

对比白名单黑名单
退出DataNode节点yesyes
被退的DataNode节点数据迁移noyes
用途DataNode节点禁用DataNode节点退役

以下操作全在NameNode节点所在的机器上执行不用切来切去

2.1、白名单(不常用,建议用黑名单)

允许白名单里的DataNode访问NameNode,不在白名单的DataNode会被退出

2.1.1、配置白名单【dfs.hosts】的位置

编辑hdfs-site.xml

cd $HADOOP_HOME/etc/hadoop
vi hdfs-site.xml

加入配置(注意每个人Hadoop安装目录不同,本文是/opt/hadoop

<property>
    <name>dfs.hosts</name>
    <value>/opt/hadoop/etc/hadoop/dfs.hosts</value>
</property>

分发

rsync.py hdfs-site.xml

2.1.2、配置白名单【dfs.hosts】的内容

cd $HADOOP_HOME/etc/hadoop
echo hadoop102 >> dfs.hosts
echo hadoop103 >> dfs.hosts
echo hadoop104 >> dfs.hosts
echo hadoop105 >> dfs.hosts
cat dfs.hosts

分发

rsync.py dfs.hosts

2.1.3、重启NameNode

hdfs --daemon stop namenode
hdfs --daemon start namenode

2.1.4、从白名单中去掉某个节点

去掉hadoop105

cd $HADOOP_HOME/etc/hadoop
echo hadoop102 > dfs.hosts
echo hadoop103 >> dfs.hosts
echo hadoop104 >> dfs.hosts
cat dfs.hosts

分发

rsync.py dfs.hosts

2.1.5、刷新节点

刷新NameNode

hdfs dfsadmin -refreshNodes

刷新ResourceManager

yarn rmadmin -refreshNodes

2.1.6、对比删前删后

删前

删后

2.2、黑名单(建议使用)

黑名单上DataNode节点会被退出,退出前会进行数据迁移

2.2.1、取消上面白名单配置,并传些数据到HDFS,用于后续观赏

将被退役的节点上,上传一些数据

ssh hadoop105 "echo aaaabbbbccccddddeeeeffffgggg > ~/b.txt"
ssh hadoop105 "hadoop fs -put ~/b.txt /"

上传b.txt并查看其位置(3副本)

2.2.2、配置黑名单【dfs.hosts.exclude】的位置(并重启NameNode)

cd $HADOOP_HOME/etc/hadoop
vi hdfs-site.xml
<property>
    <name>dfs.hosts.exclude</name>
    <value>/opt/hadoop/etc/hadoop/dfs.hosts.exclude</value>
</property>

分发

rsync.py hdfs-site.xml

重启NameNode

hdfs --daemon stop namenode
hdfs --daemon start namenode

2.2.3、配置黑名单【dfs.hosts.exclude】的内容

hadoop105加入黑名单

cd $HADOOP_HOME/etc/hadoop
echo hadoop105 >> dfs.hosts.exclude
cat dfs.hosts.exclude

2.2.4、刷新节点

hdfs dfsadmin -refreshNodes
yarn rmadmin -refreshNodes

2.2.5、对比刷新前后

节点状态图标

节点状态变化:in service -> decommissioning -> decommissioned

jps进程查看,发现DataNode还在

b.txt刷新前

刷新后

3、补充

en🔉cn
decommissionˌdiːkəˈmɪʃnv. 拆除(核武器等);使(船)退役
availabilityəˌveɪləˈbɪlətin. 可用性;有效性
generationˌdʒenəˈreɪʃnn. 一代;产生;一代人
maintenanceˈmeɪntənənsn. 维护,维修;保持;生活费用
refreshrɪˈfreʃ刷新
freshfreʃ新鲜的
excludeɪkˈskluːdvt. 排除;排斥
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小基基o_O

您的鼓励是我创作的巨大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值