Hadoop集群動態服役新的數據節點&&退役數據節點


備注:新添的機器為hadoop05,現有hadoop01、hadoop02、hadoop03、hadoop04

環境准備:

  1、先克隆一台和集群中一樣的機器

  2、修改機器ip和主機名稱

  3、刪除原來的data文件和log日志的殘存的文件

服役新節點的具體步驟:

  1、在namenode的安裝目錄中的etc/hadoop文件夾下創建dfs.hosts文件

    touch dfs.hosts

  2、在文件中添加datanode的主機名稱(包括新添加的節點)

    hadoop02

    hadoop03

    hadoop04

    hadoop05

  3、在namenode的hdfs-site.xml配置文件中添加dfs.hosts屬性

<property>
        <name>dfs.hosts</name>
        <value>/soft/apps/hadoop/hadoop/etc/hadoop/dfs.hosts<alue>
</property>

  4、刷新namenode

    hdfs dfsadmin -refreshNode

    提示:Refresh nodes successful

  5、更新resourcemanager節點

    yarn rmadmin -refreshNode

    提示:INFO client.RMProxy:connecting頭resourceManager at hadoop 02/192.168.80.2:8033

  6、在namenode的slaves文件中添加新主機的名稱

     注意:不需要分發文件

    hadoop02

    hadoop03

    hadoop04

    hadoop05

  7、單獨命令啟動新的數據節點和節點管理器

    hadoop-daemon.sh start datanode

    yarn-deamon.sh start nodemanager

    8、在web上查看是否啟動

    192.168.80.1:50070

    9、如果數據不均衡的話,可以用命令實現集群的在平衡

    start-dalancer.sh

--------------------------------------------------------------------------------------------

退役數據節點

1、在namenode的安裝目錄的etc/hadoop目錄下面創建dfs.hosts.exclude文件

  touch dfs.hosts.exclude

  vi dfs.hosts.exclude

  添加主機名(要退役的節點)

2、在namenode的hdfs-site.xml配置文件中增加dfs.hosts.exclude屬性

<property>
        <name>dfs.hosts.exclude</name>
        <value>/soft/apps/hadoop/hadoop/etc/hadoop/dfs.hosts.exclude<alue>
</property>

3、刷新namenode、刷新resourcemanager

  hdfs dfsadmin -refreshNodes

  提示:Refresh nodes successful

  yarn rmadmin -refreshNodes

4、檢查web,退役節點的狀態為decommission in progress(退役中),說明數據節點正在復制塊到其他節點

5、等待退役節點狀態為:decommissioned (所有塊已經復制成功),停止該節點及節點資源管理器。注意:如果副本數是3.服役的節點小於等於3.是不能退役成功的。需要修改副本數之后才能退役

  hadoop-daemon.sh stop datanode

  hadoop-daemon.sh stop nodemanager

6、從include文件中刪除退役節點,在運行刷新節點的命令

  1、從dfs.hosts文件中刪除退役的節點hadoop05

  2、刷新namenode,舒心resourcemanager

    hdfs dfsadmin -refreshNodes

    提示:Refresh nodes successful

    yarn rmadmin -refreshNodes

7、從namenode的slaves文件總刪除退役節點(Hadoop05)

8、若是數據不均衡刷新

  start-balancer.sh


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM