备注:新添的机器为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. 复习 C++ 中类的函数指针

    函数指针这种东西,平时工作中基本上不会用到. 那函数指针会用在哪里? 下面是一些基本的用法,根据消息号调到对应的函数: #include <iostream> #include <m ...

  2. 安装fastdfs文件系统

    1.下载源码包 需要下载的源码包: fastDFS源代码:FastDFS_v5.01.tar.gz fastDFS的nginx模块源代码:fastdfs-nginx-module_v1.15.tar. ...

  3. 【Spark调优】:RDD持久化策略

    [场景] Spark对RDD执行一系列算子操作时,都会重新从头到尾计算一遍.如果中间结果RDD后续需要被被调用多次,可以显式调用 cache()和 persist(),以告知 Spark,临时保存之前 ...

  4. iOS开发-自动隐藏键盘及状态栏

    1.隐藏状态栏 iOS升级至7.0以后,很多API被废止,其中原有隐藏状态栏StatusBar的方法就失效了. 原有方案 [[UIApplication sharedApplication] setS ...

  5. docker启动报错iptables failed: -重建docker0网络恢复

    # docker启动报错 [root@localhost mysqlconf]# docker run -d -p 8080:8080 --link zookeeper:zookeeper -e du ...

  6. 课程一(Neural Networks and Deep Learning),第二周(Basics of Neural Network programming)—— 2、编程作业常见问题与答案(Programming Assignment FAQ)

    Please note that when you are working on the programming exercise you will find comments that say &q ...

  7. C#:使用HtmlAgilityPack解析Html

    推荐阅读: HtmlAgilityPack 入门教程1 HtmlAgilityPack入门教程2 向HtmlAgilityPack道歉:解析HTML还是你好用 获取html中meta标签中的conte ...

  8. Ruby:Mechanize的使用教程

    小技巧 puts Mechanize::AGENT_ALIASES 可以打印出所有可用的user_agent puts Mechanize.instance_methods(false) 输出Mech ...

  9. C# 多线程六之Task(任务)二

    前面介绍了Task的由来,以及简单的使用,包括开启任务,处理任务的超时.异常.取消.以及如果获取任务的返回值,在回去返回值之后,立即唤起新的线程处理返回值.且如果前面的任务发生异常,唤起任务如果有效的 ...

  10. netty客户端源码

    随笔记录. //创建一个ChannelFactory(客户端代码) ChannelFactory factory = new NioClientSocketChannelFactory( Execut ...