博客
关于我
DataNode(面试开发重点3)
阅读量:798 次
发布时间:2019-03-25

本文共 1302 字,大约阅读时间需要 4 分钟。

Hadoop节点退役指南

1. 概念解释

在Hadoop集群中,节点的退役有两种方式:白名单和黑名单。

  • 白名单:允许指定主机访问NameNode,未在白名单中的主机将被逐出。
  • 黑名单:强制指定主机退出集群。请确保主机名称不同时出现在白名单和黑名单中。

2. 白名单退役

配置步骤

  • 创建配置文件

    在NameNode路径 /opt/module/hadoop-2.7.2/etc/hadoop/ 下创建 dfs.hosts 文件。

    cd /opt/module/hadoop-2.7.2/etc/hadoopvim dfs.hosts

    添加以下主机名称(不包括 hadoop105):

    hadoop102hadoop103hadoop104
  • 更新hdfs-site.xml

    在NameNode配置文件中添加 dfs.hosts 属性。

    vim ./hdfs-site.xml

    添加以下内容:

    dfs.hosts
    /opt/module/hadoop-2.7.2/etc/hadoop/dfs.hosts
  • 刷新节点

    执行节点刷新命令。

    hdfs dfsadmin -refreshNodes

    预期输出:

    Refresh nodes successful
  • 验证效果

    在浏览器中查看集群状态,白名单中的主机应以 allowed 状态显示。


  • 3. 黑名单退役

    配置步骤

  • 创建配置文件

    在NameNode路径下创建 dfs.hosts.exclude 文件。

    cd /opt/module/hadoop-2.7.2/etc/hadoopvim dfs.hosts.exclude

    添加将要退役的主机名称(例如 hadoop105)。

  • 更新hdfs-site.xml

    在hdfs-site.xml中添加 dfs.hosts.exclude 属性。

    vim ./hdfs-site.xml

    添加以下内容:

    dfs.hosts.exclude
    /opt/module/hadoop-2.7.2/etc/hadoop/dfs.hosts.exclude
  • 刷新节点

    执行节点刷新命令。

    hdfs dfsadmin -refreshNodes

    预期输出:

    Refresh nodes successful
  • 查看退役状态

    在浏览器中查看节点状态,应显示退役节点状态为 decommission in progress


  • 成熟前的注意事项

  • 确保副本数合理。若副本数为3,且服务节点数小于等于3,则无法退役,需调整副本数后再操作。
  • 等待节点状态更新为 decommissioned,此时可停止节点服务。
    hadoop-daemon.sh stop datanode

    输出示例:

    stopping datanode

  • 4. 集群再平衡

    数据不均衡时,可运行脚本实现集群再平衡。

    ./start-balancer.sh

    此脚本会协调节点之间的数据分配,确保数据平衡。

    转载地址:http://oasyk.baihongyu.com/

    你可能感兴趣的文章
    Navicat工具中建立数据库索引
    查看>>
    navicat工具查看MySQL数据库_表占用容量_占用空间是多少MB---Linux工作笔记048
    查看>>
    navicat怎么导出和导入数据表
    查看>>
    Navicat怎样同步两个数据库中的表
    查看>>
    Navicat怎样筛选数据
    查看>>
    Navicat报错connection is being used
    查看>>
    Navicat报错:1045-Access denied for user root@localhost(using passwordYES)
    查看>>
    Navicat控制mysql用户权限
    查看>>
    navicat操作mysql中某一张表后, 读表时一直显示正在载入,卡死不动,无法操作
    查看>>
    Navicat连接mysql 2003 - Can't connect to MySQL server on ' '(10038)
    查看>>
    Navicat连接mysql数据库中出现的所有问题解决方案(全)
    查看>>
    Navicat连接Oracle出现Oracle library is not loaded的解决方法
    查看>>
    Navicat连接Oracle数据库以及Oracle library is not loaded的解决方法
    查看>>
    Navicat连接sqlserver提示:未发现数据源名并且未指定默认驱动程序
    查看>>
    navicat连接远程mysql数据库
    查看>>
    Navicat通过存储过程批量插入mysql数据
    查看>>
    Navicat(数据库可视化操作软件)安装、配置、测试
    查看>>
    navigationController
    查看>>
    NB-IOT使用LWM2M移动onenet基础通信套件对接之APN设置
    查看>>
    NBear简介与使用图解
    查看>>