• 动态的添加和删除hadoop集群中的节点


    一:添加节点

    步骤:

    1.新节点中添加账户,设置无密码登陆

    2.Name节点中设置到新节点的无密码登陆

    3.在Name节点slaves文件中添加新节点

    4.在所有节点/etc/hosts文件中增加新节点名

    5.cd /usr/local/hadoop

      hadoop-deamon.sh start datanode

    .均衡数据节点的数据 start-balamcer.sh

    1.设置平衡阀值,默认为10%

    start-balancer.sh-threshold  5

    2.设balance宽带,默认为1M/s

    hdfs dfsadmin -setBalancer Band width 2017520

    问题-查看日志:

    1.utilities---->Browse the FS  查看hdfs集群中文件

    2.logs 日志

    实际操作:

    A:新节点中添加账户,设置无密码登陆

    B:Name节点中设置到新节点的无密码登陆

    ssh-copy-id slave4

    C:在Name节点slaves文件中添加新节点

    D:在所有节点/etc/hosts文件中增加新节点(所有节点保持一致)


    -----------------------------
    E:启动datanode进程,在新节点中执行--在hadoop安装目录下输入 
    sbin/hadoop-daemon.sh start datanode 

    直接刷新web界面,可以看到节点已经在上面了


    2.启动nodemanager进程 
    在hadoop安装目录下输入 
    sbin/yarn-daemon.sh start nodemanager 


    3.均衡block 
    sbin/start-balancer.sh

    1)如果不balance,那么cluster会把新的数据都存放在新的node上,这样会降低mapred的工作效率
    2)设置平衡阈值,默认是10%,值越低各节点越平衡,但消耗时间也更长
    sbin/start-balancer.sh -threshold 5
    3)设置balance的带宽,默认只有1M/s
    通过下面的命令也可以设置平衡时使用的网络带宽(字节/秒)

    4.配置宽带

    打开hdfs-site.xml,设置节点平衡带宽设置(默认值1M,下面设置为10M)

    <property>

    <name>dfs.datanode.balance.bandwidthPerSec</name>

    <value>20971520</value>

    </property>

    在NameNode运行 hadoop dfsadmin -report 查看存活的节点

    二、删除节点

    A:修改Name节点的hdfs-site.xml增加,设置节点排除文件的位置(必须是绝对路径)

    <property>
        <name>dfs.hosts.exclude</name>
        <value>/soft/hadoop/conf/excludes</value>
    </property>

    C:新建excludes文件,文件里写要删除节点的hostname

    在excludes文件中添加要排除的节点主机名,一行一个

    D:Name节点执行

    hadoop dfsadmin –refreshNodes


    等状态变成Decommissioned后就可以关闭这个节点了,


    可在要移除的节点上运行相应的关闭命令,如:

    hadoop-daemon.sh stop datanode

    几分钟后,节点将从Decommissioned进入Dead状态(时间经过大约500多秒)。

    也可以在NameNode上查看关闭进程

    hadoop dfsadmin -report

    ------------注意

    1:如果刚删除的节点要再添加到集群要先删除excludes文件,执行 hadoop dfsadmin –refreshNodes
    2:节点的状态可以通过http://NameNodes:50070查看
    3:如果数据较大则关闭的时间可能会很长

  • 相关阅读:
    老外写的js闭包
    List<Object> 转为 List<MyClass>
    html 自定义属性
    js 中的算术运算
    System.Web.Mvc.Html 命名空间小计
    历时半年,发布最完整的代码生成器CodeBuilder最新版本
    CodeBuilder之Template接口
    CodeBuilder之Tool接口
    FaibClass.Data
    轻量的Json序列化
  • 原文地址:https://www.cnblogs.com/pigdata/p/10305609.html
Copyright © 2020-2023  润新知