Hadoop日常维护系列——Hadoop添加删除节点
添加节点
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

1 <property>
2 <name>dfs.balance.bandwidthPerSec</name>
3 <value>1048576</value>
4 <description>
5 Specifies the maximum amount of bandwidth that each datanode
6 can utilize for the balancing purpose in term of
7 the number of bytes per second.
8 </description>
9 </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-
slave-
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依然存在,需要手工处理一下.
Hadoop日常维护系列——Hadoop添加删除节点的更多相关文章
- mongodb replica set 添加/删除节点方法--http://www.ii123.com/jc/bc/bczh/258948.html
replica set多服务器主从,添加,删除节点,肯定会经常遇到的.下面详细说明一下,添加,删除节点的2种方法. 一,利用rs.reconfig,来添加,删除节点 1,添加节点 代码如下 re ...
- MongoDB添加删除节点
副本集添加删除节点 sharding添加删除节点 先将节点设置为hidden,再remove
- redis cluster 添加/删除节点操作
RedisCluster 添加/删除节点 添加节点新配置两个测试节点8008和9009 [root@--- ~]# /usr/local/redis-/bin/redis-server /u02/re ...
- hadoop动态添加删除节点datanode及恢复
1. 配置系统环境 主机名,ssh互信,环境变量等 本文略去jdk安装,请将datanode的jdk安装路径与/etc/hadoop/hadoop-evn.sh中的java_home保持一致,版本ha ...
- 节点操作-创建并添加&删除节点&替换&克隆节点
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" ...
- redis集群添加删除节点
Redis3.0集群添加节点 1:首先把需要添加的节点启动 cd /usr/local/cluster/ mkdir 7006 cp /usr/local/cluster/redis.conf /u ...
- Mongodb 3.6 副本集测试及添加删除节点等操作
下载tar包并安装curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.6.8.tgz [root@mysqlt ...
- dom 添加删除节点
//找到 div1 var div1 = document.getElementById("div1"); //创建 一个 p标签 var p = document.createE ...
- RedisCluster 添加/删除节点
一,redis cluster命令行 //集群(cluster) CLUSTER INFO 打印集群的信息 CLUSTER NODES 列出集群当前已知的所有节点(node),以及这些节点的相关信息. ...
随机推荐
- C#运用GmaQrCode生成二维码
项目中需要生成二维码,方法比较多,可以采用JS插件,也可以采用第三方插件后台生成二维码,在后台方法中可以采用QRCode或者GmaQrCode,现在介绍一种C#在后台生成二维码的方法: /// < ...
- 轻松搞定Win8 IIS支持SVC 从而实现IIS寄宿WCF服务
写在前面 为了尝试在IIS中寄宿WCF服务,需要配置IIS支持SVC命令,于是便有了在DOS命令中用到ServiceModelReg.exe注册svc命令. 坑爹的是注册成功后就开始报错.无奈之下两次 ...
- 1.Java网络编程之概述
黑马程序员_毕向东_Java基础视频教程第23天-01-网络编程(概述)学习笔记 网络通讯三要素: 1.IP地址 I.网络中设备的标识 II.不易记忆,可用主机名 www 万维网组织,baidu主机 ...
- 1.JAVA中使用JNI调用C++代码学习笔记
Java 之JNI编程1.什么是JNI? JNI:(Java Natibe Inetrface)缩写. 2.为什么要学习JNI? Java 是跨平台的语言,但是在有些时候仍然是有需要调用本地代码 ( ...
- 关于replace()方法中第二个参数的转义问题
如果你想通过Javascript代码在网页中呈现 \ 字符,则在JS代码中你必须输入两个反斜杠 \\,否则会报错.比如: var a = "\"; alert(a); //chro ...
- NPTL vs PThread
NPTL vs PThread POSIX threads (pthread) is not an implementation, it is a API specification (a stand ...
- Java中的访问控制权限
简介 Java中为什么要设计访问权限控制机制呢?主要作用有两点: (1)为了使用户不要触碰那些他们不该触碰的部分,这些部分对于类内部的操作时必要的,但是它并不属于客户端程序员所需接口的一部分. (2) ...
- SpringMVC 实现POI读取Excle文件中数据导入数据库(上传)、导出数据库中数据到Excle文件中(下载)
读取Excale表返回一个集合: package com.shiliu.game.utils; import java.io.File; import java.io.FileInputStream; ...
- angular.js规范写法
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- html5 postMessage解决iframe跨协议跨域通信问题
a.html有个iframe载入b.com/login.html,当login完成时通知a.html页面登录完成并传递UserName 1.a.html 监听消息 window.addEventLis ...