备注:新添的机器为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地理位置信息库geopy的使用(一):基本使用

    geopy是Python关于地理位置的一个第三方库,用这个库来进行地址位置信息的查询和转换非常方便,本文介绍关于geopy的常用的几种用法 geopy的安装 pip install geopy 根据地 ...

  2. RabbitMQ在mac上的安装

    1.官网下载rabbitmq-server-3.6.3, 地址http://www.rabbitmq.com/install-standalone-mac.html.2.tar -zxvf rabbi ...

  3. 一步一步教你用 Vue.js + Vuex 制作专门收藏微信公众号的 app

    一步一步教你用 Vue.js + Vuex 制作专门收藏微信公众号的 app 转载 作者:jrainlau 链接:https://segmentfault.com/a/1190000005844155 ...

  4. .NET跨平台实践:再谈用C#开发Linux守护进程 — 完整篇

    Linux守护进程是Linux的后台服务进程,相当于Windows服务,对于为Linux开发服务程序的朋友来说,Linux守护进程相关技术是必不可少的,因为这个技术不仅仅是为了开发守护进程,还可以拓展 ...

  5. Winform 多线程--解决界面卡死问题

    public class ThreadInvoker { /// <summary> /// 回调委托 带参数的 /// </summary> /// <param na ...

  6. 监督学习——决策树理论与实践(下):回归决策树(CART)

    介绍 决策树分为分类决策树和回归决策树: 上一篇介绍了分类决策树以及Python实现分类决策树: 监督学习——决策树理论与实践(上):分类决策树          决策树是一种依托决策而建立起来的一种 ...

  7. 再学Java 之 interface的成员变量

    前言:最近在学多线程,写“哲学家就餐问题(Dining Philosophers)”的时候,需要定义一个全局的变量,即哲学家的人数.常用的做法是在其中一个类中定义一个static final的变量,然 ...

  8. 把 Elasticsearch 当数据库使:聚合后排序

    使用 https://github.com/taowen/es-monitor 可以用 SQL 进行 elasticsearch 的查询.有的时候分桶聚合之后会产生很多的桶,我们只对其中部分的桶关心. ...

  9. OpenShift Redhat 搭建NodeJS环境

    https://openshift.redhat.com/ OpenShift 是 redhat 公司推出的一个 PaaS 云计算应用平台,开发者可在上面构建.测试.部署和运行应用程序,它支持 Jav ...

  10. 为什么研发团队不适合量化KPI的绩效考核?

    研发团队(如果不是外包,不是机械性的活动)如果进行的是creative的有创造性的智力活动,那么应该不适合用量化KPI的绩效考核和激励,不应该用工时.bug数(难度大的bug可能多,测试人员可能没有经 ...