备注:新添的机器为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

Hadoop集群动态服役新的数据节点&&退役数据节点的更多相关文章

  1. Hadoop概念学习系列之Hadoop集群动态增加新节点或删除已有某节点及复制策略导向 (四十三)

    不多说,直接上干货! hadoop-2.6.0动态添加新节点 https://blog.csdn.net/baidu_25820069/article/details/52225216 Hadoop集 ...

  2. Linux:实现Hadoop集群Master无密码登录(SSH)各个子节点

    以下所介绍的安装方式都是在线安装方式,如果你需要连网请参考:Linux:宿主机通过桥接方式连接的VMware内部Linux14.04虚拟机(静态IP)实现上网方案 环境: OS:Linux Ubunt ...

  3. hadoop 集群 加入一个新的存储节点和删除一个计算节点需要刷新集群状态命令

    加入一个新的存储节点和删除一个计算节点需要刷新集群状态命令 方式1:静态添加datanode,停止namenode方式 1.停止namenode 2.修改slaves文件,并更新到各个节点3.启动na ...

  4. Spring Cloud Eureka集群 动态扩展新节点

    场景描述: Eureka的集群节点有两个,互相注册形成集群,已经支持动态刷新(不知道怎么让Eureka支持动态刷新的可以参考http://www.cnblogs.com/flying607/p/845 ...

  5. 大数据测试之hadoop集群配置和测试

    大数据测试之hadoop集群配置和测试   一.准备(所有节点都需要做):系统:Ubuntu12.04java版本:JDK1.7SSH(ubuntu自带)三台在同一ip段的机器,设置为静态IP机器分配 ...

  6. adoop集群动态添加和删除节点

    hadoop集群动态添加和删除节点说明 上篇博客我已经安装了Hadoop集群(hadoop集群的安装步骤和配置),现在写这个博客我将在之前的基础上进行节点的添加的删除. 首先将启动四台机器(一主三从) ...

  7. 深入理解Hadoop集群和网络

    导读:云计算和Hadoop中网络是讨论得相对比较少的领域.本文原文由Dell企业技术专家Brad Hedlund撰写,他曾在思科工作多年,专长是数据中心.云网络等.文章素材基于作者自己的研究.实验和C ...

  8. 深入理解Hadoop集群和网络【转】

    http://os.51cto.com/art/201211/364374.htm 本文将着重于讨论Hadoop集群的体系结构和方法,及它如何与网络和服务器基础设施的关系.最开始我们先学习一下Hado ...

  9. Hadoop:搭建hadoop集群

    操作系统环境准备: 准备几台服务器(我这里是三台虚拟机): linux ubuntu 14.04 server x64(下载地址:http://releases.ubuntu.com/14.04.2/ ...

随机推荐

  1. 【算法python实现】 -- 不同路径

    原题:https://leetcode-cn.com/problems/unique-paths/ 问题描述 n行m列的表格,从a[0][0]出发,每次只能右移一步或者下移一步,求到a[n-1][m- ...

  2. Python-使用PyQT生成图形界面

    1.安装PyQT5以及QT Designer工具包 pip install PyQt5 pip install PyQt5-tools -i http://pypi.douban.com/simple ...

  3. FileAttributeView出现空指针异常原因分析

    问题?   Java7新增了关于文件属性信息的一些新特性,通过java.nio.file.*包下面的类可以实现设置或者读取文件的元数据信息(比如最后修改时间,创建时间,文件大小,是否为目录等等).尤其 ...

  4. 【UML】:类图

    1  实线/虚线 + 三角空心箭头: 继承extends:实线,三角空心箭头指向父类,子类指向父类,子类 is a 父类. 实现implements:虚线,三角空心箭头指向接口,类指向接口,类 实现 ...

  5. 在express3里用ejs模版引擎时,如何使其支持'.html'后缀

    ①express 默认jade模板,改为ejs模板,需执行以下命令: express -e --ejs ②在app.js中,将 app.set('view engine', 'jade'); 替换为 ...

  6. WebRTC开发基础(WebRTC入门系列3:RTCDataChannel)

    除了视频和音频,webRTC还可以传输其他数据 例子: http://webrtc.github.io/samples/src/content/datachannel/datatransfer/ 应用 ...

  7. python学习笔记12-深浅拷贝

    以上为浅拷贝. .copy()函数 赋值:数据完全共享(=赋值是在内存中指向同一个对象,如果是可变(mutable)类型,比如列表,修改其中一个,另一个必定改变 如果是不可变类型(immutable) ...

  8. 让Sublime Text3支持Less

    1.安装Sublime 插件    (1)安装LESS插件:因为Sublime不支持Less语法高亮,所以,先安装这个插件,方法: ctrl+shift+p>install Package> ...

  9. filebeat-2-通过kafka队列链接logstash

    filebeat 直接到logstash, 由于logstash的设计问题, 可能会出现阻塞问题, 因为中间使用消息队列分开 可以使用redis, 或者kafka, 这儿使用的是kafka 1, 安装 ...

  10. Java中的八大基本数据类型

    Java中的基本类型主要包括整数.浮点数.字符和布尔类型. 整数: 整数类型主要包括byte.short.int.long四种类型,所占大小分别为1byte.2byte.4byte和8byte: 浮点 ...