添加节点

1.修改host 
  和普通的datanode一样。添加namenode的ip
2.修改namenode的配置文件conf/slaves 
  添加新增节点的ip或host
3.在新节点的机器上,启动服务

[root@slave-004 Hadoop]# ./bin/hadoop-daemon.sh start datanode[root@slave-004 hadoop]# ./bin/hadoop-daemon.sh start tasktracker

4.均衡block

[root@slave-004 hadoop]# ./bin/start-balancer.sh

1)如果不balance,那么cluster会把新的数据都存放在新的node上,这样会降低mapred的工作效率 
2)设置平衡阈值,默认是10%,值越低各节点越平衡,但消耗时间也更长

[root@slave-004 hadoop]# ./bin/start-balancer.sh -threshold 5

3)设置balance的带宽,默认只有1M/s
 <property>

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

   <value>1048576</value>  

  <description>  

     Specifies the maximum amount of bandwidth that each datanode   

     can utilize for the balancing purpose in term of   

     the number of bytes per second.   

   </description> 

</property>
注意: 
1. 必须确保slave的firewall已关闭; 
2. 确保新的slave的ip已经添加到master及其他slaves的/etc/hosts中,反之也要将master及其他slave的ip添加到新的slave的/etc/hosts中

删除节点

1.集群配置 
   修改conf/hdfs-site.xml文件
 <property>
  <name>dfs.hosts.exclude</name>
  <value>/data/soft/hadoop/conf/excludes</value>
  <description>
Names a file that contains a list of hosts that are
   not permitted to connect to the namenode. The full pathname of the
  file must be specified. If the value is empty, no hosts are
  excluded.
</description>
</property>
2确定要下架的机器 
dfs.hosts.exclude定义的文件内容为,每个需要下线的机器,一行一个。这个将阻止他们去连接Namenode。如:

slave-003  slave-004

3.强制重新加载配置

[root@master hadoop]# ./bin/hadoop dfsadmin  -refreshNodes

它会在后台进行Block块的移动
4.关闭节点 
等待刚刚的操作结束后,需要下架的机器就可以安全的关闭了。

[root@master hadoop]# ./bin/ hadoop dfsadmin -report

可以查看到现在集群上连接的节点

正在执行Decommission,会显示: Decommission Status : Decommission in progress  执行完毕后,会显示: Decommission Status : Decommissioned

5.再次编辑excludes文件 
一旦完成了机器下架,它们就可以从excludes文件移除了 
登录要下架的机器,会发现DataNode进程没有了,但是TaskTracker依然存在,需要手工处理一下

http://www.dataguru.cn/forum.php?mod=viewthread&tid=175348

Hadoop下添加节点和删除节点的更多相关文章

  1. jQuery---清空节点和删除节点

    清空节点和删除节点 //可以清空一个元素的内容 //清理门户 $("div").empty(); //完全移除元素 $("div").remove(); $(f ...

  2. jQuery中的查找节点、创建节点、插入节点、删除节点、替换节点、复制节点操作方法

    jQuery操作节点我们可以分六点来讲,查找节点.创建节点.插入节点.删除节点.替换节点.复制节点. 一.查找节点 text() - 设置或返回所选元素的文本内容   ,html() - 设置或返回所 ...

  3. Hadoop记录-Hadoop集群添加节点和删除节点

    1.添加节点 A:新节点中添加账户,设置无密码登陆 B:Name节点中设置到新节点的无密码登陆 C:在Name节点slaves文件中添加新节点 D:在所有节点/etc/hosts文件中增加新节点(所有 ...

  4. Hadoop动态增加节点与删除节点

    Hadoop的全分布式安装网上也很多教程,踩过很多坑,整理不出来了……赶紧把增加删除节点留住. 均衡数据 (1)设置数据传输带宽为64M(默认值比较低) hdfs dfsadmin -setBalan ...

  5. jQuery选择器(添加节点及删除节点及克隆及替换及包装)第九节

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. JavaScript实验一(添加节点,删除节点)

    静态html页面: <!DOCTYPE html> <html> <head lang="en"> <meta charset=" ...

  7. Redis集群增加节点和删除节点

    本文主要是承接上一篇文章Redis集群的离线安装成功以后,我们如何进行给集群增加新的主从节点(集群扩容)以及如何从集群中删除节点(集群缩容),也就是集群的伸缩,集群伸缩的原理是控制虚拟槽和数据在节点之 ...

  8. c#操作xml的代码(插入节点、修改节点、删除节点等)

    bookstore.xml文件内容: 复制代码代码示例: <?xml version="1.0" encoding="gb2312"?><bo ...

  9. Docker swarm集群增加节点和删除节点

    Docker swarm集群增加节点 docker swarm初始化 docker swarm init docker swarm 增加节点 在已经初始化的机器上执行:# docker swarm j ...

随机推荐

  1. 在Fragment中保存WebView状态

    http://www.lucazanini.eu/2013/android/how-to-save-the-state-of-a-webview-inside-a-fragment-of-an-act ...

  2. 从零开始学安全(二十五)●用nmap做端口扫描

    以上是常用的端口扫描 -T 用法 每个级别发包时间  当没有使用T 时默认的使用T3级别发包 半开扫描  先探测主机是否存活 再用-sS  扫描端口   容易造成syn 包攻击 就是利用僵尸主机  进 ...

  3. 6.7 使用show profile 进行sql分析

    1. 查看是否开启 show variables like 'profiling'; 2. 开启功能 set profiling = on 3. 运行sql #写的尽量耗时的sql,利于分析 sele ...

  4. 【Spring】28、Spring中基于Java的配置@Configuration和@Bean用法.代替xml配置文件

    Spring中为了减少xml中配置,可以生命一个配置类(例如SpringConfig)来对bean进行配置. 一.首先,需要xml中进行少量的配置来启动Java配置: <?xml version ...

  5. Netty 系列二(传输).

    一.前言 上一篇文章我们提到 Netty 的核心组件是 Channel.回调.Future.ChannelHandler.EventLoop,这篇文章主要是对 Channel (Netty传入和传出数 ...

  6. chartControl ViewType.Bar 用法测试

    使用方法 一. Datatable : chartControl1.Series.Clear(); DataTable dt = new DataTable(); dt.Columns.Add(&qu ...

  7. nodeJs express mongodb 建站(linux 版)

    一.环境安装 1.安装node wget http://nodejs.org/dist/v0.12.2/node-v0.12.2-linux-x64.tar.gz //下载tar xvf node-v ...

  8. layui layer select 选择被遮挡

    在编程的时候, layer弹窗中的select 经常会遇到被遮挡的情况: 解决方法:在页面里面找到对应div的class 给overflow新的属性visible即可(默认值.内容不会被修剪,会呈现在 ...

  9. JS与CSS阻止元素被选中及清除选中的方法总结

    有时候,我们希望阻止用户选中我们指定区域的文字或内容. 举个栗子,有时候用户在一个区域执行频繁的点击操作,一不小心傲娇地点多了,就会选中当前区域的内容. 再举个栗子,制作轮播组件的时候,点击下一页,若 ...

  10. Python运维开发:运算符与数据类型(二)

    python对象的相关术语: python程序中保存的所有数据都是围绕对象这个概念展开的: 程序中存储的所有数据都是对象 每个对象都有一个身份.一个类型和一个值 例如,school='MaGe Lin ...