hadoop学习笔记--第十天--增减删除节点

本文记录了在Hadoop集群中如何增加及删除节点的详细步骤,包括节点配置、数据分布调整等关键环节。

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

增加节点

1、新增加节点192.168.203.113
2、配置无密码rsh,将namenode节点/home/hdpuser/.ssh/authorized_keys拷贝同113的同等目录下,并设置.ssh目录权限为700,authorized_keys权限为600
3、则namenode的slaves文件中,增添新机器的hostname
4、在/etc/hosts中增添新机器hostname和ip的对应
5、将hadoop目录以及配置文件copy至新节点
6、在新节点中,启动服务
./hadoop-daemon.sh start datanode
yarn-daemon.sh start nodemanager

    增添一个节点,他最初是空的,然后早先的节点已经存储了一些数据。这个时候,文件系统认为是不平衡的。虽然新写入的文件可以进入新节点,但原有的副本数据仍然分布在之前的节点。此时,可以调用HDFS的一个平衡器,让集群节点中的数据平衡,平衡器可以设置平均利用率的阀值以及均衡操作时占用的网络资源,例如限制带宽。
7、可以使用start-balancer.sh均衡节点

删除节点

删除之前有
Live Nodes : 3 (Decommissioned: 0)

1、编辑hdfs-site.xml,增添如下内容,设定排除的节点
   <property>
       <name>dfs.hosts.exclude</name>
       <value>/home/hdpuser/hadoop-2.2.0/conf/exclude</value>
   </property>
2、编辑/创建/home/hdpuser/hadoop-2.2.0/conf/exclude
其中需要包含被排除节点的hostname,例如
[hdpuser@hdpNameNode conf]$ cat exclude 
hdpDataNode2

3、执行hadoop dfsadmin -refreshNodes

4、在web页面中可以看到一个节点正在退役(此时在copy相应的文件)。
Decommissioning Nodes : 1
5、节点退役过程结束后,在namenode的日志文件会出现:
[hdpuser@hdpNameNode logs]$ grep 'Decommission complete' ./*
./hadoop-hdpuser-namenode-hdpNameNode.log:2013-12-17 16:29:51,605 INFO org.apache.hadoop.hdfs.server.blockmanagement.DatanodeManager: Decommission complete for 192.168.203.113:50010
6、此时可以将节点从集群中移出。

其实hadoop删除节点,还有一种不推荐的做法。因为HDFS设计本身是非常有弹性的,所以确实勊有直接杀死节点或将之从集群中断开。namenode会检测到节点的死亡,并开始复制那些低于约定副本数的数据块。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值