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

方式1:静态添加datanode,停止namenode方式

1.停止namenode
2.修改slaves文件,并更新到各个节点
3.启动namenode
4.执行hadoop balance命令。(此项为balance集群使用,如果只是添加节点,则此步骤不需要)

-----------------------------------------

方式2:动态添加datanode,不停namenode方式

1.修改slaves文件,添加需要增加的节点host或者ip,并将其更新到各个节点
2.在datanode中启动执行启动datanode命令。命令:sh hadoop-daemon.sh start datanode
3.可以通过web界面查看节点添加情况。或使用命令:sh hadoop dfsadmin -report
4.执行hadoop balance命令。(此项为balance集群使用,如果只是添加节点,则此步骤不需要)

------------------------

针对第4点,start-balancer.sh可以执行-threshold参数。
-threshold参数是指定平衡的阈值。
-threshold的默认是10,即每个datanode节点的实际hdfs存储使用量/集群hdfs存储量

举例:
datanode hdfs使用量1.2G;
集群总hdfs存储量10T即10000G;
则t值为1.2/10000 = 0.00012;
当执行balance的-t参数小于0.00012时,集群进行balance;
命令为:start-balancer.sh -threshold 0.0001

注:
1. balance命令可以在namenode或者datanode上启动;
可以随时停止balance命令。
balance的默认带宽是1M/s。
2. slave文件是用于重启时使用。集群的start和stop需要读取slave文件。
启用datanode时只要在hdfs-site中配置了namenode位置,就可以将信息push给namenode。
查看namenode的http管理界面,可查看节点添加情况。
---------------------------------------------------------------

************************************************************************************
HDFS删除节点

方式1:通过dead方式(namenode上):

1. sh hadoop dfsadmin  -refreshServiceAcl

说明:dead方式并未修改slave文件和hdfs-site文件。
所以在集群重启时,该节点不会被添加到namenode的管理中。
此次在namenode上进行,其他节点可另行实验。,该命令会将该节点状态置为dead。
----------------------------------------------------------------

方式2:通过decommission方式:

a) 修改hdfs-site,添加exclude字段中的排除的节点。
b) 执行sh hadoop dfsadmin -refreshNodes,强制刷新。
c) 查看节点状态,该节点的状态为decommission。

说明:decommission方式修改了hdfs-site文件,未修改slave文件。
所以集群重启时,该节点虽然会被启动为datanode,但是由于添加了exclude,所以namenode会将该节点置为decommission。
此时namenode不会与该节点进行hdfs相关通信。也即exclude起到了一个防火墙的作用。

注:
1. 如果在某个节点单独停止datanode,那么在namenode的统计中仍会出现该节点的datanode信息。
此时可通过dead或者decommission(退役)方式下线机器。

hadoop 集群 加入一个新的存储节点和删除一个计算节点需要刷新集群状态命令的更多相关文章

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

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

  2. 向CDH5集群中添加新的主机节点

    向CDH5集群中添加新的主机节点 步骤一:首先得在新的主机环境中安装JDK,关闭防火墙.修改selinux.NTP时钟与主机同步.修改hosts.与主机配置ssh免密码登录.保证安装好了perl和py ...

  3. redis入门(14)redis集群下的数据分区存储

    redis入门(10)redis集群下的数据分区存储

  4. Dubbo入门到精通学习笔记(十五):Redis集群的安装(Redis3+CentOS)、Redis集群的高可用测试(含Jedis客户端的使用)、Redis集群的扩展测试

    文章目录 Redis集群的安装(Redis3+CentOS) 参考文档 Redis 集群介绍.特性.规范等(可看提供的参考文档+视频解说) Redis 集群的安装(Redis3.0.3 + CentO ...

  5. 1.还不会部署高可用的kubernetes集群?看我手把手教你使用二进制部署v1.23.6的K8S集群实践(上)

    公众号关注「WeiyiGeek」 设为「特别关注」,每天带你玩转网络安全运维.应用开发.物联网IOT学习! 本章目录: 0x00 前言简述 0x01 环境准备 主机规划 软件版本 网络规划 0x02 ...

  6. Hadoop集群动态服役新的数据节点&&退役数据节点

    备注:新添的机器为hadoop05,现有hadoop01.hadoop02.hadoop03.hadoop04 环境准备: 1.先克隆一台和集群中一样的机器 2.修改机器ip和主机名称 3.删除原来的 ...

  7. 如何实现集群中的 session 共享存储?

    Session 是运行在一台服务器上的,所有的访问都会到达我们的唯一服务器上,这 样我们可以根据客户端传来的 sessionID,来获取 session,或在对应 Session 不 存在的情况下(s ...

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

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

  9. Oracle RAC集群搭建(一)-ASM共享存储卷

    01, ASM共享存储卷 安装集群的话,必须要有共享磁盘,目的是为作裁决磁盘使用.还需要有数据文件的共享磁盘 02,规划 主机 裁决磁盘 数据 rac1        1G*1          20 ...

随机推荐

  1. GNU CMAKE 笔记

    最近在调试OJ, 忙了4天多, 最后的问题是judge模块不能正常工作. judge 模块就是两个C++源文件, 它的工作是 从数据库获取用户提交的源码 测评 将测评结果写到数据库 测评部分是与数据库 ...

  2. django入门记录 2

    1. 创建一个app, python manage.py startapp  appname 2. 设计model,在appname/目录下编辑好model 3. 检测model的修改,python ...

  3. oracle修改表字段名时报错:ORA-00054:资源正忙,但指定以NOWAIT方式获取资源,或者超时失效的问题

    打开sql plus select session_id from v$locked_object;查询出oracle锁定的会话ID SELECT sid, serial#, username, os ...

  4. Python – locals和globals

    转载: Python两个内置函数--locals 和globals (学习笔记) Python两个内置函数locals 和globals, 这两个函数主要提供,基于字典的访问局部和全局变量的方式.在理 ...

  5. Centos7下搭建KVM虚拟机

    PRE-INSTALL ============================================================= kvm相关安装包及其作用 qemu-kvm 主要的K ...

  6. python的正则表达式 re-------可以在字符串前加上 r 这个前缀来避免部分疑惑,因为 r 开头的python字符串是 raw 字符串,所以里面的所有字符都不会被转义

    正则表达式使用反斜杆(\)来转义特殊字符,使其可以匹配字符本身,而不是指定其他特殊的含义.这可能会和python字面意义上的字符串转义相冲突,这也许有些令人费解.比如,要匹配一个反斜杆本身,你也许要用 ...

  7. mysql case when

    下面为您举例说明了三种mysql中case when语句的使用方法,供您参考学习,如果您对mysql中case when语句使用方面感兴趣的话,不妨一看. 1. select name, case w ...

  8. C#验证子网掩码的正确性

    1.       IP合法关于IP地址的合法性验证很简单,方法也很多,比如字符串分解.正则表达式等. 2.       子网掩码是否合法简单来讲,子网掩码就类似这样一串数字,前面一段是连续的1, 类似 ...

  9. TortoiseSVN的相关问题

    图标覆盖问题: 创建一个保存文档的目录,创建一个工作目录,工作目录创建后,没有显示覆盖图标.解决办法如下: 找到设置,在工作目录下右键 打开界面如下: 从包含路径中设置就可以. 目录检出后把它从检出状 ...

  10. css中的px、em、rem 详解

    概念介绍: 1.px (pixel,像素):是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI(Dots Per Inch,每英寸像素数),在扫描打印时 ...