博客
关于我
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/

    你可能感兴趣的文章
    Notepad++在线和离线安装JSON格式化插件
    查看>>
    notepad++最详情汇总
    查看>>
    notepad如何自动对齐_notepad++怎么自动排版
    查看>>
    Notification 使用详解(很全
    查看>>
    NotImplementedError: Cannot copy out of meta tensor; no data! Please use torch.nn.Module.to_empty()
    查看>>
    Now trying to drop the old temporary tablespace, the session hangs.
    查看>>
    nowcoder—Beauty of Trees
    查看>>
    np.arange()和np.linspace()绘制logistic回归图像时得到不同的结果?
    查看>>
    np.power的使用
    查看>>
    NPM 2FA双重认证的设置方法
    查看>>
    npm build报错Cannot find module ‘webpack/lib/rules/BasicEffectRulePlugin‘解决方法
    查看>>
    npm build报错Cannot find module ‘webpack‘解决方法
    查看>>
    npm ERR! ERESOLVE could not resolve报错
    查看>>
    npm ERR! fatal: unable to connect to github.com:
    查看>>
    npm ERR! Unexpected end of JSON input while parsing near '...on":"0.10.3","direc to'
    查看>>
    npm ERR! Unexpected end of JSON input while parsing near ‘...“:“^1.2.0“,“vue-html-‘ npm ERR! A comp
    查看>>
    npm error Missing script: “server“npm errornpm error Did you mean this?npm error npm run serve
    查看>>
    npm error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装
    查看>>
    npm install CERT_HAS_EXPIRED解决方法
    查看>>
    npm install digital envelope routines::unsupported解决方法
    查看>>