博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
运行中hadoop增加和删除datanode (*)
阅读量:6091 次
发布时间:2019-06-20

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

增加Hadoop新节点:

向一个正在运行的Hadoop集群中增加几个新的Nodes

1. 新节点上部署java/hadoop程序,配置相应的环境变量

2. 新节点上增加用户,从master上拷贝id_rsa.pub并配置authorized_keys

3. 新节点上设置/etc/hosts,只要有本机和masterhost即可

/etc/hosts

127.0.0.1       localhost

10.10.10.101 node1
10.10.10.102 node2
10.10.10.103 node3
10.10.10.104 node4

4. 新节点上建立相关的目录,并修改属主,将Node4之中 ~/tmp目录下的内容都删除掉,否则会被认为已经创建的节点。

5. masterslaves文件中增加上相的节点(* 注意:只在NameNode之上配置就可以)

/etc/masters

node1

/etc/slaves

node2

node3

node4

6. 在新节点上启动datanodetasktracker

localadmin@node4:~/hadoop-0.20.2/bin$ hadoop-daemon.sh start datanode

localadmin@node4:~/hadoop-0.20.2/bin$ hadoop-daemon.sh start tasktracker

使用'Jps'进行检查。

7. 进行block块的均衡

hdfs-site.xml中增加设置balance的带宽,默认只有1M

<property> 

    <name>dfs.balance.bandwidthPerSec</name> 
    <value>10485760</value> 
    <description>
        Specifies the maximum bandwidth that each datanode can utilize for the balancing purpose in term of the number of bytes per second.
    </description> 
</property>

运行以下命令:

hadoop/bin/start-balancer.sh -threshold 3

均衡10个节点,移动400G数据,大概花费了3个小时

The cluster is balanced. Exiting…
Balancing took 2.9950980555555557 hours
============================================================

删除Hadoop节点:

 
Hadoop 提供了
Decommission 的特性,可以按照以下步骤来操作:

1. hadoopconf目录下生成一个excludes的文件 /etc/nn-excluded-list,写上需要remove的节点

    一个节点一行,如:

node4

2. 
hdfs-site.xml 中增加配置:

<property>    

    <name>dfs.hosts.exclude</name>    
    <value>/etc/nn-excluded-list</value>   
</property>

3. 复制文件到集群各节点上

4. 执行hadoop dfsadmin -refreshNodes命令,它会在后台进行Block块的移动

    从移出的Nodes上移动到其它的Nodes上面

5. 通过以下2种方式查看Decommission的状态:

    hadoop dfsadmin -report

    

    正在执行Decommission,会显示:

    Decommission Status : Decommission in progress

    执行完毕后,会显示:

    Decommission Status : Decommissioned

转载于:https://www.cnblogs.com/licheng/archive/2011/11/10/2244804.html

你可能感兴趣的文章
IDEA和Eclipse经常使用快捷键(Win Mac)
查看>>
ubutntu apt 源
查看>>
PHP 文件处理
查看>>
cesium之核心类Viewer简介篇
查看>>
ALSA声卡驱动中的DAPM详解之六:精髓所在,牵一发而动全身
查看>>
libev与libuv的区别
查看>>
iOS 为什么使用xcode8上传app包到appStore无法构建版本
查看>>
Tomcat优化步骤【转】
查看>>
CRC 自动判断大端 小端
查看>>
原来这样可以轻松恢复回收站删除文件
查看>>
DisparityCostVolumeEstimator.cpp
查看>>
(转)git中关于fetch的使用
查看>>
mongo DB for C#
查看>>
caffe整体框架的学习的博客,这个博客山寨了一个caffe框架
查看>>
git只拉取github部分代码的方法
查看>>
[LeetCode] Construct Quad Tree 建立四叉树
查看>>
如何避免SHRINKDATABASE & SHRINKFILE 产生索引碎片(转载)
查看>>
【SSH网上商城项目实战02】基本增删查改、Service和Action的抽取以及使用注解替换xml...
查看>>
高阶函数简述 js
查看>>
Java CompletableFuture:allOf等待所有异步线程任务结束
查看>>