大数据Hadoop集群如何实现节点的动态增删以实现扩容和缩容?

2026-04-28 10:291阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1354个文字,预计阅读时间需要6分钟。

大数据Hadoop集群如何实现节点的动态增删以实现扩容和缩容?

添加白名单和黑名单,白名单表示在白名单中的主机IP地址可用于存储数据;企业中配置白名单,可以最大限度防止黑客恶意访问攻击。配置白名单步骤如下:

原文:sw-code+1在NameNode节点简化后:在NameNode节点配置白名单步骤如下:

添加白名单和黑名单

白名单,表示在白名单的主机IP地址可以用来存储数据

企业中;配置白名单,可以尽量防止黑客恶意访问攻击。

配置白名单步骤如下:原文:sw-code

1)在NameNode节点的/opt/module/hadoop-3.1.3/etc/hadoop目录创建whitelistblacklist

创建白名单

vim whitelist # 输入如下内容 hadoop102 hadoop103

创建黑名单

touch blacklist

2)修改hdfs-site.xml

vim hdfs-site.xml

<property> <name>dfs.hosts</name> <value>/opt/module/hadoop-3.1.3/etc/hadoop/whitelist</value> </property> <property> <name>dfs.hosts.exclude</name> <value>/opt/module/hadoop-3.1.3/etc/hadoop/blacklist</value> </property>

3)分发到所有节点

xsync whitelist blacklist hdfs-site.xml

4)第一次添加白名单必须重启集群,不是第一次,只需刷新NameNode节点即可

[hadoop@hadoop102 hadoop]$ myhadoop.sh stop [hadoop@hadoop102 hadoop]$ myhadoop.sh start

5)在Web浏览器上查看DN,Namenode information

6)在hadoop104上执行上传数据失败,hadoop104上并没有副本

[hadoop@hadoop102 hadoop-3.1.3]$ hadoop fs -put NOTICE.txt /

7)二次修改白名单,增加Hadoop104, 并分发

[hadoop@hadoop102 hadoop]$ vim whitelist # 新增hadoop104 hadoop102 hadoop103 hadoop104 # 分发 [hadoop@hadoop102 hadoop]$ xsync whitelist

8)刷新NameNode

[hadoop@hadoop102 hadoop]$ hdfs dfsadmin -refreshNodes Refresh nodes successful

9)再次查看Namenode information

服役新数据节点 1)需求

随着公司业务增长,数据量越来越大,原有的数据节点的容量已经不能满足存储数据的需求,需要在原有集群基础上动态添加新的数据节点。

2)环境准备

(1)在hadoop102主机上再克隆一台hadoop105主机

(2)修改IP地址和主机名称

sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33 # 修改IPADDR IPADDR=192.168.10.105 sudo vim /etc/hostname hadoop105 # 重启 reboot

(3)删除datalogs目录

cd /opt/module/hadoop-3.1.3 rm -rf data/ logs/

(4)在所有节点的hosts增加节点名

sudo vim /etc/hosts # 新增 192.168.10.105 hadoop105

(5)启动HDFS和NodeManager

[hadoop@hadoop105 hadoop-3.1.3]$ hdfs --daemon start datanode [hadoop@hadoop105 hadoop-3.1.3]$ yarn --daemon start nodemanager [hadoop@hadoop105 hadoop-3.1.3]$ jps 1283 DataNode 1475 Jps 1389 NodeManager

(6)添加白名单(如果设置了白名单,需要这一步,否则忽略)

[hadoop@hadoop102 hadoop]$ vim whitelist # 添加 hadoop105 # 分发,hadoop105单独设置一下 [hadoop@hadoop102 hadoop]$ xsync whitelist # 刷新NameNode [hadoop@hadoop102 hadoop]$ hdfs dfsadmin -refreshNodes Refresh nodes successful

(7)查看 Namenode information

节点间数据均衡

开启数据均衡

[hadoop@hadoop105 hadoop-3.1.3]$ sbin/start-balancer.sh -threshold 10

参数10,代表的是集群中各个节点的磁盘空间利用率相差不超过10%,可根据实际情况进行调整。

停止负载均衡

[hadoop@hadoop105 hadoop-3.1.3]$ sbin/stop-balancer.sh

注意:由于HDFS需要启动单独的Rebalance Server来执行Rebalance操作,所以尽量不要再NameNode上执行start-balancer.sh,而是找一台比较空闲的机器。

黑名单退役旧节点

1)编辑/opt/module/hadoop-3.1.3/etc/hadoop目录下的blacklist

vim blacklist

添加主机名(要退役的节点)

hadoop105

如果没有配置黑名单,需要在hdfs-site.xml中配置

大数据Hadoop集群如何实现节点的动态增删以实现扩容和缩容?

<property> <name>dfs.hosts.exclude</name> <value>/opt/module/hadoop-3.1.3/etc/hadoop/blacklist</value> </property>

2)分发配置文件balcklist hdfs-site.xml,所有节点都要修改

[hadoop@hadoop102 hadoop]$ xsync blacklist

3)刷新NameNode

[hadoop@hadoop102 hadoop]$ hdfs dfsadmin -refreshNodes Refresh nodes successful

4)检查Web浏览器Namenode information,可以看到正在退役中。

表示正在退役,该阶段会复制副本到其他节点,之前上传到hadoop105的文件副本会被复制到其他节点

5)等待退役节点状态为Decommissioned(所有块已复制完成),停止该节点以及节点资源管理器。注意:如果副本数是3,服务的节点数量小于3,是不能退役成功的,需要修改副本数后才能退役。

[hadoop@hadoop105 hadoop-3.1.3]$ hdfs --daemon stop datanode [hadoop@hadoop105 hadoop-3.1.3]$ yarn --daemon stop nodemanager [hadoop@hadoop105 hadoop-3.1.3]$ jps 1941 Jps

6)如果数据不均衡,可以使用命令实现集群的平衡

[hadoop@hadoop102 hadoop-3.1.3]$ sbin/start-balancer.sh -threshold 10

本文共计1354个文字,预计阅读时间需要6分钟。

大数据Hadoop集群如何实现节点的动态增删以实现扩容和缩容?

添加白名单和黑名单,白名单表示在白名单中的主机IP地址可用于存储数据;企业中配置白名单,可以最大限度防止黑客恶意访问攻击。配置白名单步骤如下:

原文:sw-code+1在NameNode节点简化后:在NameNode节点配置白名单步骤如下:

添加白名单和黑名单

白名单,表示在白名单的主机IP地址可以用来存储数据

企业中;配置白名单,可以尽量防止黑客恶意访问攻击。

配置白名单步骤如下:原文:sw-code

1)在NameNode节点的/opt/module/hadoop-3.1.3/etc/hadoop目录创建whitelistblacklist

创建白名单

vim whitelist # 输入如下内容 hadoop102 hadoop103

创建黑名单

touch blacklist

2)修改hdfs-site.xml

vim hdfs-site.xml

<property> <name>dfs.hosts</name> <value>/opt/module/hadoop-3.1.3/etc/hadoop/whitelist</value> </property> <property> <name>dfs.hosts.exclude</name> <value>/opt/module/hadoop-3.1.3/etc/hadoop/blacklist</value> </property>

3)分发到所有节点

xsync whitelist blacklist hdfs-site.xml

4)第一次添加白名单必须重启集群,不是第一次,只需刷新NameNode节点即可

[hadoop@hadoop102 hadoop]$ myhadoop.sh stop [hadoop@hadoop102 hadoop]$ myhadoop.sh start

5)在Web浏览器上查看DN,Namenode information

6)在hadoop104上执行上传数据失败,hadoop104上并没有副本

[hadoop@hadoop102 hadoop-3.1.3]$ hadoop fs -put NOTICE.txt /

7)二次修改白名单,增加Hadoop104, 并分发

[hadoop@hadoop102 hadoop]$ vim whitelist # 新增hadoop104 hadoop102 hadoop103 hadoop104 # 分发 [hadoop@hadoop102 hadoop]$ xsync whitelist

8)刷新NameNode

[hadoop@hadoop102 hadoop]$ hdfs dfsadmin -refreshNodes Refresh nodes successful

9)再次查看Namenode information

服役新数据节点 1)需求

随着公司业务增长,数据量越来越大,原有的数据节点的容量已经不能满足存储数据的需求,需要在原有集群基础上动态添加新的数据节点。

2)环境准备

(1)在hadoop102主机上再克隆一台hadoop105主机

(2)修改IP地址和主机名称

sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33 # 修改IPADDR IPADDR=192.168.10.105 sudo vim /etc/hostname hadoop105 # 重启 reboot

(3)删除datalogs目录

cd /opt/module/hadoop-3.1.3 rm -rf data/ logs/

(4)在所有节点的hosts增加节点名

sudo vim /etc/hosts # 新增 192.168.10.105 hadoop105

(5)启动HDFS和NodeManager

[hadoop@hadoop105 hadoop-3.1.3]$ hdfs --daemon start datanode [hadoop@hadoop105 hadoop-3.1.3]$ yarn --daemon start nodemanager [hadoop@hadoop105 hadoop-3.1.3]$ jps 1283 DataNode 1475 Jps 1389 NodeManager

(6)添加白名单(如果设置了白名单,需要这一步,否则忽略)

[hadoop@hadoop102 hadoop]$ vim whitelist # 添加 hadoop105 # 分发,hadoop105单独设置一下 [hadoop@hadoop102 hadoop]$ xsync whitelist # 刷新NameNode [hadoop@hadoop102 hadoop]$ hdfs dfsadmin -refreshNodes Refresh nodes successful

(7)查看 Namenode information

节点间数据均衡

开启数据均衡

[hadoop@hadoop105 hadoop-3.1.3]$ sbin/start-balancer.sh -threshold 10

参数10,代表的是集群中各个节点的磁盘空间利用率相差不超过10%,可根据实际情况进行调整。

停止负载均衡

[hadoop@hadoop105 hadoop-3.1.3]$ sbin/stop-balancer.sh

注意:由于HDFS需要启动单独的Rebalance Server来执行Rebalance操作,所以尽量不要再NameNode上执行start-balancer.sh,而是找一台比较空闲的机器。

黑名单退役旧节点

1)编辑/opt/module/hadoop-3.1.3/etc/hadoop目录下的blacklist

vim blacklist

添加主机名(要退役的节点)

hadoop105

如果没有配置黑名单,需要在hdfs-site.xml中配置

大数据Hadoop集群如何实现节点的动态增删以实现扩容和缩容?

<property> <name>dfs.hosts.exclude</name> <value>/opt/module/hadoop-3.1.3/etc/hadoop/blacklist</value> </property>

2)分发配置文件balcklist hdfs-site.xml,所有节点都要修改

[hadoop@hadoop102 hadoop]$ xsync blacklist

3)刷新NameNode

[hadoop@hadoop102 hadoop]$ hdfs dfsadmin -refreshNodes Refresh nodes successful

4)检查Web浏览器Namenode information,可以看到正在退役中。

表示正在退役,该阶段会复制副本到其他节点,之前上传到hadoop105的文件副本会被复制到其他节点

5)等待退役节点状态为Decommissioned(所有块已复制完成),停止该节点以及节点资源管理器。注意:如果副本数是3,服务的节点数量小于3,是不能退役成功的,需要修改副本数后才能退役。

[hadoop@hadoop105 hadoop-3.1.3]$ hdfs --daemon stop datanode [hadoop@hadoop105 hadoop-3.1.3]$ yarn --daemon stop nodemanager [hadoop@hadoop105 hadoop-3.1.3]$ jps 1941 Jps

6)如果数据不均衡,可以使用命令实现集群的平衡

[hadoop@hadoop102 hadoop-3.1.3]$ sbin/start-balancer.sh -threshold 10