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

    你可能感兴趣的文章
    npm install无法生成node_modules的解决方法
    查看>>
    npm run build 失败Compiler server unexpectedly exited with code: null and signal: SIGBUS
    查看>>
    npm run build报Cannot find module错误的解决方法
    查看>>
    npm run build部署到云服务器中的Nginx(图文配置)
    查看>>
    npm run dev 报错PS ‘vite‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。
    查看>>
    npm start运行了什么
    查看>>
    npm WARN deprecated core-js@2.6.12 core-js@<3.3 is no longer maintained and not recommended for usa
    查看>>
    NPM使用前设置和升级
    查看>>
    npm入门,这篇就够了
    查看>>
    npm切换到淘宝源
    查看>>
    npm前端包管理工具简介---npm工作笔记001
    查看>>
    npm发布自己的组件UI包(详细步骤,图文并茂)
    查看>>
    npm和yarn清理缓存命令
    查看>>
    npm和yarn的使用对比
    查看>>
    npm学习(十一)之package-lock.json
    查看>>
    npm安装crypto-js 如何安装crypto-js, python爬虫安装加解密插件 找不到模块crypto-js python报错解决丢失crypto-js模块
    查看>>
    npm报错unable to access ‘https://github.com/sohee-lee7/Squire.git/‘
    查看>>
    npm的常用配置项---npm工作笔记004
    查看>>
    npm的问题:config global `--global`, `--local` are deprecated. Use `--location=global` instead 的解决办法
    查看>>
    npm编译报错You may need an additional loader to handle the result of these loaders
    查看>>