导航菜单
首页 >  考研黑名单和白名单  > HDFS添加白名单和黑名单(含具体实现)

HDFS添加白名单和黑名单(含具体实现)

白名单和黑名单是hadoop管理集群机器的一种机制。

添加到白名单的主机节点,都允许访问NameNode,不在白名单的主机节点,都会被退出。

添加到黑名单的主机节点,不允许访问NameNode,会将黑名单的主机节点上的数据迁移到白名单主机节点上,然后退出该黑名单节点。

实际情况下,白名单用于确定允许访问NameNode的DataNode节点。黑名单用于在集群运行过程中退役DataNode节点。

一、配置白名单和黑名单的具体步骤如下:

1、在NameNode节点的/opt/module/hadoop-3.1.3/etc/hadoop目录下分别创建whitelist和blacklist文件。

//创建whitelist文件:touch whitelist //创建blacklist文件:touch blacklist

2、在 hdfs-site.xml配置文件中添加dfs.hosts和dfs.hosts.exclude参数配置。

dfs.hosts/opt/module/hadoop-3.1.3/etc/hadoop/whitelistdfs.hosts.exclude/opt/module/hadoop-3.1.3/etc/hadoop/blacklist

3、分发配置文件whitelist、blacklist、hdfs-site.xml。(将这三个配置文件发送到集群中的所有机器中) 。rsync为分发命令,-av为归档拷贝并显示复制过程。

rsync-av$pdir/$fname$user@hadoop$host:$pdir/$fname命令 选项参数要拷贝的文件路径/名称 目的用户@主机:目的路径/名称

4、分发脚本后,重启集群。

//关闭HDFS集群stop-dfs.sh//打开HDFS集群start-dfs.sh

5、可在web浏览器上查看目前正常工作的DataNode节点。

二、黑名单退役步骤如下:

1、编辑/opt/module/hadoop-3.1.3/etc/hadoop目录下的blacklist文件。

vim blacklist

在文件内添加如下的主机名称(要退役的节点)。如下是对所有机器进行过host文件配置的。如果这样设置不起作用,可尝试此次填写具体ip地址。

hadoop101

2、分发blacklist到集群内所有节点上。rsync为分发命令,-av为归档拷贝并显示复制过程。

rsync-av$pdir/$fname$user@hadoop$host:$pdir/$fname命令 选项参数要拷贝的文件路径/名称 目的用户@主机:目的路径/名称

3、刷新NameNode、刷新ResourceManager。

hdfs dfsadmin -refreshNodesyarn rmadmin -refreshNodes

4、进入web浏览器,检查退役节点的状态为decommission in progress(退役中),说明数据节点正在复制块到其他白名单节点上。

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

hdfs --daemon stop datanodeyarn --daemon stop nodemanager

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

sbin/start-balancer.sh

注意:不允许白名单和黑名单同时出现同一个主机名称,既然使用了黑名单blacklist成功退役了某个节点,因此要将白名单whitelist里面的该节点也去掉。

相关推荐: