我的大数据之路--hadoop2.6.5集群节点的动态增加与删除

hadoop2.6.5集群节点的动态增加与删除

增加datanode

一,首先在创建一台虚拟机,也可以复制已有的虚拟机

在这里插入图片描述

二、进入之后修改hostname和ip
vi /etc/hostname

在这里插入图片描述

vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 #ifcfg-enp0s3 可能有所不同

在这里插入图片描述

三、重启
reboot
四、修改Master的/etc/hosts文件,Slave1,Slave2,Slave3都要增加Slave3的ip

在这里插入图片描述

因为现在的文件都是Slave2的,各个的id都需要变化,所以要删除dfs.namenode.name.dir和dfs.datanode.data.dir 目录下的所有文件,我当初设置的是
在这里插入图片描述

rm -r /user/hadoop-2.6.5/data/datanode/*
rm -r /user/hadoop-2.6.5/data/namenode/*

不然会报错
FATAL org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for block pool Block pool B…

五、在Master主机上开启zookeeper,在开启hadoop

点这里呀,一shell启动

sh zookeeper_start.sh
start-all.sh
六、开启Slave3的datanode
hadoop-daemon.sh start datanode
七、刷新namenode
hdfs dfsadmin -refreshNodes
start-balancer.sh

这时打开web,发现多了一个Slave3在datanode上
在这里插入图片描述

八、启动hadoop查看,在Slave3上运行代码
hadoop fs -ls /

在这里插入图片描述

动态删除DataNode

一、在Master主机上配置NameNode的hdfs-site.xml,增加如下配置
 <property>
    <name>dfs.hosts.exclude</name>
    <value>/user/hadoop-2.6.5/excludes</value>
  </property>
二、创建文件excludes
touch /user/hadoop-2.6.5/excludes
三、在文件中添加你想要删除的datanode的IP或者主机名

Slave3

在这里插入图片描述

四,刷新namenode
bin/hdfs dfsadmin -refreshNodes
sbin/start-balancer.sh
五、查看web

发现Maste端的Slave3-datanode已经出现Decommissoned(退役)
在这里插入图片描述

而Slave1上的namenode没有配置删除Slave3-datanode
所以在Slave1上,还是ok的
在这里插入图片描述

再在Master主机上删除excludes下的Slave3
在这里插入图片描述
再次刷新namendoe

bin/hdfs dfsadmin -refreshNodes
sbin/start-balancer.sh

再次查看Master的web端
在这里插入图片描述

成功实现动态删除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值