hadoop动态增删节点

hadoop动态增删节点

目录

hadoop动态增删节点

前提条件

资料链接

增添节点

删除节点

重新加入删除的节点


前提条件

已经在虚拟机配置好三个hadoop集群,本次集群是根据以下博客配置,大家可以参考一下2021年全国行业职业技能竞赛暨第四届全国大学生大数据技能竞赛——职教学生组线上选拔赛

资料链接

链接:https://pan.baidu.com/s/1Q2Z-roUoGSMkXNf1I4dThA 
提取码:yikm 

主一从二

增添节点

新建虚拟机并配置好初始化环境

时区同步和ntp同步:

操作环境:slave3

tzselect

 依次输入:5  9 1 1

vim /etc/profile
添加:
TZ='Asia/Shanghai'; export TZ
source /etc/profile
date

ntpdate master

 创建定时任务:

crotab -e
*/10 * * * * usr/sbin/ntpdate master

 查看定时任务:

crontab -l

修改hosts文件:

操作环境:master,slave1,slave2,slave3 

ping slave3测试(Ctrl+C停止):

操作环境:master

修改slaves:

操作环境:master,slave1,slave2

cd /usr/hadoop/hadoop-2.7.7/etc/hadoop/
vim slaves

 增加slave3

免密登录ssh:

操作环境:master  

ssh-copy-id slave3

 ssh测试:

ssh slave3
exit

分发节点到slave3:

操作环境:master

scp -r /usr/java/ root@slave3:/usr/
scp -r /usr/hadoop/ root@slave3:/usr/

添加环境变量:

操作环境:slave3

vim /etc/profile
添加:
#java
export JAVA_HOME=/usr/java/jdk1.8.0_221
export PATH=$PATH:$JAVA_HOME/bin
#hadoop
export HADOOP_HOME=/usr/hadoop/hadoop-2.7.7
export CLASSPATH=$CLASSPATH:$HADOOP_HOME/lib
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile

验证java以及hadoop:

操作环境:slave3

java -version
hadoop version

添加DataNode:

操作环境:salve3

对于新添加的DataNode节点,需要启动datanode进程,从而加入集群中

cd /usr/hadoop/hadoop-2.7.7/
sbin/hadoop-daemon.sh start datanode
jps


在namenode(master)上刷新datanode:

操作环境:master

hdfs dfsadmin -refreshNodes

查看集群状况:

操作环境:master

hdfs dfsadmin -report

 在web中查看:

matser:50070

注意:在windows上做主机名映射

 平衡DataNode节点:

操作环境:master

cd /usr/hadoop/hadoop-2.7.7/sbin/
//对hdfs负载设置均衡,因为默认的数据传输带宽比较低,可以设置为64M
hdfs dfsadmin -setBalancerBandwidth 67108864
//默认balancer的threshold为10%,即各个节点与集群总的存储使用率相差不超过10%,我们可将其设置为5%
start-balancer.sh -threshold 5

添加NodeManager:

操作环境:master,slave3

//由于Hadoop 2.X引入了YARN框架,所以对于每个计算节点都可以通过NodeManager进行管理,同理启动NodeManager进程后,即可将其加入集群
//在slave3上,运行 sbin/yarn-daemon.sh start nodemanager
//在ResourceManager,通过 yarn node -list 查看集群情况 

删除节点

修改hdfs-site.xml:

操作环境:master

<property>
  <!--dfs.hosts.exclude定义的文件内容为,每个需要下线的机器,一行一个-->
  <name>dfs.hosts.exclude</name>
  <value>/usr/hadoop/hadoop-2.7.7/etc/hadoop/excludes</value>
</property>

创建并修改excludes文件:

操作环境:master

添加需要删除节点的IP

echo slave3 >> excludes

刷新节点配置情况:

操作环境:master

hadoop dfsadmin -refreshNodes

在web中查看:

此时在Web UI上就可以看到该节点变为Decommissioning状态,过一会就变为Dead了
也可以通过:hadoop dfsadmin -report 命令查看

 

重新加入删除的节点

1.在master的excludes文件中删除相应节点IP
2.在slave上重启datanode进程:hadoop-daemon.sh start datanode
3.在master上刷新节点配置情况:hadoop dfsadmin -refreshNodes

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

慕铭yikm

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值