Hadoop服役新服务器和推移旧服务器
Posted 刘元涛
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hadoop服役新服务器和推移旧服务器相关的知识,希望对你有一定的参考价值。
服役新服务器
1)需求
随着公司业务的增长,数据量越来越大,原有的数据节点的容量已经不能满足存储数据的需求,需要在原有集群基础上动态添加新的数据节点。
2)环境准备
新服务器安装Hadoop
相关的环境,配置好hostname
和hosts
。 拷贝/etc/profile.d/my_env.sh
并执行source /etc/profile
注:通常采用镜像拷贝或者克隆的方式在新机器上克隆就机器的镜像。如果是使用旧镜像的话,克隆完成后记得删除
Hadoop
目录下的data
和logs
。
3)服役新节点具体步骤
(1)直接启动DataNode
,即可关联到集群
[lytfly@hadoop105 hadoop-3.1.4]$ hdfs --daemon start datanode
[lytfly@hadoop105 hadoop-3.1.4]$ yarn --daemon start nodemanager
4)在白名单中增加新服役的服务器
(1)在白名单whitelist
和workers
文件中增加hadoop104
、hadoop105
节点,并重启集群
[lytfly@hadoop102 hadoop]$ vim whitelist
whitelist修改为如下内容:
hadoop102
hadoop103
hadoop104
hadoop105
[lytfly@hadoop102 hadoop]$ vim workers
workers修改为如下内容:
hadoop102
hadoop103
hadoop104
hadoop105
(2)分发
[lytfly@hadoop102 hadoop]$ xsync whitelist workers
(3)刷新NameNode
[lytfly@hadoop102 hadoop-3.1.4]$ hdfs dfsadmin -refreshNodes
5)新服务器添加后执行集群中节点间的数据均衡
新服务器hadoop105数据少,需要执行数据均衡操作,参见《Hadoop服务器间数据均衡》
黑名单退役服务器
黑名单:表示在黑名单的主机IP地址不可以用来存储数据。
1)编辑/opt/module/hadoop-3.1.4/etc/hadoop
目录下的blacklist
文件
[lytfly@hadoop102 hadoop] vim blacklist
添加如下主机名称(要退役的节点)
hadoop105
注意:如果黑名单中没有配置,需要在
hdfs-site.xml
配置文件中增加dfs.hosts
配置参数
<!-- 黑名单 -->
<property>
<name>dfs.hosts.exclude</name>
<value>/opt/module/hadoop-3.1.4/etc/hadoop/blacklist</value>
</property>
2)分发配置文件blacklist
,hdfs-site.xml
[lytfly@hadoop102 hadoop]$ xsync hdfs-site.xml blacklist
3)第一次添加黑名单必须重启集群,不是第一次,只需要刷新NameNode
节点即可
[lytfly@hadoop102 hadoop-3.1.4]$ hdfs dfsadmin -refreshNodes
Refresh nodes successful
4)检查Web浏览器,退役节点的状态为decommission in progress
(退役中),说明数据节点正在复制块到其他节点
5)等待退役节点状态为decommissioned
(所有块已经复制完成),停止该节点及节点资源管理器。注意:如果副本数是3,服役的节点小于等于3,是不能退役成功的,需要修改副本数后才能退役
[lytfly@hadoop105 hadoop-3.1.4]$ hdfs --daemon stop datanode
stopping datanode
[lytfly@hadoop105 hadoop-3.1.4]$ yarn --daemon stop nodemanager
stopping nodemanager
6)如果数据不均衡,可以用命令实现集群的再平衡
[lytfly@hadoop102 hadoop-3.1.4]$ sbin/start-balancer.sh -threshold 10
以上是关于Hadoop服役新服务器和推移旧服务器的主要内容,如果未能解决你的问题,请参考以下文章