Hadoop3.2.0 HDFS DataNode管理员指南
- 概观
- 主机级设置
- 仅限主机名配置
- 基于JSON的配置
- 群集级别设置
- 度量
概观
Hadoop分布式文件系统(HDFS)名称节点维护所有数据节点的状态。有两种类型的状态。第一种类型描述了datanode的活跃性,指示节点是活的,死的还是陈旧的。第二种类型描述了管理状态,指示节点是在服务中,退役还是在维护中。
当管理员停用datanode时,datanode将首先转换为DECOMMISSION_INPROGRESS状态。在属于该datanode的所有块已根据每个块的复制因子完全复制到其他位置之后。datanode将转换为DECOMMISSIONED状态。之后,管理员可以关闭节点以执行可能需要数天或数周的长期维修和维护。机器修好后,机器可以重新调试回集群。
有时管理员只需要将数据节点缩短几分钟/小时即可执行短期维修/维护。在这种情况下,退役引起的HDFS块复制开销可能不是必需的,并且需要轻量级过程。这就是维护状态的用途。当管理员将datanode置于维护状态时,datanode将首先转换为ENTERING_MAINTENANCE状态。只要属于该datanode的所有块都在其他地方进行了最低限度的复制,datanode将立即转换为IN_MAINTENANCE州。维护完成后,管理员可以使datanode退出维护状态。此外,维护状态支持超时,允许管理员配置允许datanode保持维护状态的最长持续时间。超时后,数据节点将由HDFS自动转换为维护状态,无需人工干预。
总之,datanode管理操作包括以下内容:
- 退役
- Recommission
- Decommission . 退役
- Recommission . 重新挂载
- Putting nodes in maintenance state . 将节点置于维护状态
- Taking nodes out of maintenance state . 使节点退出维护状态
datanode管理员状态包括以下内容:
- NORMAL 节点正在使用中。
- DECOMMISSIONED 节点已退役。
- DECOMMISSION_INPROGRESS 节点正在转换为 DECOMMISSIONED 状态。
- IN_MAINTENANCE 节点处于维护状态。
- ENTERING_MAINTENANCE 节点正在转换为维护状态。
主机级设置
要执行任何datanode管理操作,有两个步骤。
更新主机级配置文件以指示目标数据节点的所需管理状态。配置文件有两种支持的格式。
- 仅限主机名配置。每行包括datanode的 hostname/ip 。这是默认格式。
- 基于JSON的配置。配置采用JSON格式。每个元素映射到一个datanode,每个datanode可以有多个属性。将datanode置于维护状态需要此格式。
运行以下命令让namenode重新加载主机级配置文件。hdfs dfsadmin [-refreshNodes]
Host-level 配置
这是namenode使用的默认配置。它只支持节点退役和重新启动; 它不支持与维护状态相关的管理操作。使用dfs.hosts和dfs.hosts.exclude,如hdfs-default.xml中所述。
在以下示例中,host1和host2需要在服务中。host3和host4需要处于退役状态。
dfs.hosts文件
host1
host2
host3
host4
dfs.hosts.exclude文件
host3
host4
基于JSON的配置
基于JSON的格式是支持datanode上的通用属性的新配置格式。设置以下配置以启用基于JSON的格式,如hdfs-default.xml中所述。
设置 | 值 |
---|---|
dfs.namenode.hosts.provider.classname | org.apache.hadoop.hdfs.server.blockmanagement.CombinedHostFileManager |
dfs.hosts | json主机文件的路径 |
以下是HDFS当前支持的属性列表。
属性 | 描述 |
---|---|
hostName | 需要。datanode的主机名。 |
upgradeDomain | 可选的。datanode的升级域ID。 |
adminState | 可选的。预期的管理状态。默认值为NORMAL ; 退役的退役; IN_MAINTENANCE用于维护状态。 |
port | 可选的。datanode的端口号 |
maintenanceExpireTimeInMS | 可选的。以毫秒为单位的纪元时间,直到datanode保持维护状态。默认值是永久的。 |
在以下示例中,host1和host2需要服务。host3需要处于退役状态。host4需要处于维护状态。
dfs.hosts文件
[{"hostName": "host1"},{"hostName": "host2","upgradeDomain": "ud0"},{"hostName": "host3","adminState": "DECOMMISSIONED"},{"hostName": "host4","upgradeDomain": "ud2","adminState": "IN_MAINTENANCE"}
]
群集级别设置
有几个与datanode管理相关的集群级设置。对于常见用例,您应该依赖于默认值。有关说明和默认值,请参阅hdfs-default.xml。
dfs.namenode.maintenance.replication.min
dfs.namenode.decommission.interval
dfs.namenode.decommission.blocks.per.interval
dfs.namenode.decommission.max.concurrent.tracked.nodes
度量
管理状态是namenode的webUI和JMX的一部分。如HDFSCommands.html中所述,您还可以使用以下命令验证管理状态。
使用dfsadmin检查群集级别的管理状态。
hdfs dfsadmin -report
使用fsck检查存储特定路径数据的datanode的管理状态。为了向后兼容,需要特殊标志来返回维护状态。
hdfs fsck <path> // only show decommission state
hdfs fsck <path> -maintenance // include maintenance state
原文链接: https://hadoop.apache.org/docs/r3.2.0/
Hadoop3.2.0 HDFS DataNode管理员指南相关推荐
- Hadoop3.2.0 HDFS命令指南
HDFS命令指南 概览 User Commands classpath dfs envvars fetchdt fsck getconf groups httpfs lsSnapshottableDi ...
- Hadoop3.2.0 HDFS HA ( Quorum Journal Manager )
目的 注意:使用Quorum Journal Manager或常规共享存储 背景 架构 硬件资源 部署 配置概述 配置细节 部署细节 管理命令 负载均衡器设置 自动故障转移 介绍 组件 部署ZooKe ...
- Hadoop3.2.0 HDFS磁盘平衡器
概述 建筑 命令 计划 执行 询问 取消 报告 设置 调试 概述 Diskbalancer是一个命令行工具,可以在datanode的所有磁盘上均匀分配数据.此工具与Balancer不同, 后者负责集群 ...
- hadoop3.1.0集群搭建
一.环境配置 jdk1.8 centos7 二.环境搭建 1.安装jdk 这个不用怎么说了吧,可以直接yum安装或者自己下载tar包.yum安装不用配置javahome,但是需要知道javahome位 ...
- Ubuntu18.04 安装搭建 hadoop-3.3.0 集群
Ubuntu18.04 安装搭建 hadoop-3.3.0 集群 参考博文:https://blog.csdn.net/sunxiaoju/article/details/85222290?ops_r ...
- hadoop3.3.0版本搭建
文章目录 hadoop--3.3.0 版本 默认的端口 伪分布式 设置配置文件 分布式操作 配置文件 启动命令 关闭命令,相反即可 注: hadoop--3.3.0 版本 默认的端口 namenode ...
- 【hadoop】hadoop3.2.0应用环境搭建与使用指南
下面列出我搭建hadoop应用环境的文章整理在一起,不定期更新,供大家参考,互相学习!!! 第一篇 HADOOP部分 1.1 hadoop3.2.0的安装并测试 1.2 编译Hadoop连接eclip ...
- Hadoop-3.3.0安装 Centos 8.2安装Hadoop-3.3.0 Hadoop-3.3.0安装指南
Centos 8.2 安装Hadoop 3.3.0 [root@iZuf61u64hvs1nquuaipy8Z /]# clear [root@iZuf61u64hvs1nquuaipy8Z i-da ...
- hadoop3.2.0集群搭建的一些坑!
搭建步骤就不多说了,网上教程很多,这里列举几个: https://blog.csdn.net/pucao_cug/article/details/71698903 2.8版本 https://w ...
最新文章
- Scala swing和FX
- python第一条入门程序_Python语言函数代码的执行流程
- 平衡二叉树搜索二叉树
- Winform--处理MDI父窗体与子窗体的交互
- HDU - 6273 Master of GCD
- 树莓派安装DLNA实现流媒体服务器
- Delphi -- 农历算法
- nvme固态硬盘开机慢_固态硬盘速度慢?三步教你开启SSD全速模式!
- no version information available问题解决
- python显示invalid character_python提示invalid character in identifier
- 趋势科技安全威胁病毒预警(本周十大病毒排名)
- 人脸检测--libfacedetection
- esp8266基本使用 - GET|POST
- PPTV多屏互动服务器可以看文档吗,关闭或删除PPTv多屏互动服务器的方法
- JAVA-----锁机制
- cadence allegro 元器件定位
- css学习笔记之图像
- java+selenium3
- 计算机真有趣作文,真有趣作文(五篇)
- 图解CRM(客户关系管理)全流程 1
热门文章
- petya病毒分析_首先是WannaCry,现在是Petya –防范大规模勒索软件攻击
- [sphinx]中文语言模型训练
- 中拓互联携手企信易为企业构建信息,传递信任
- 微信为什么使用 SQLite 保存聊天记录
- 同期群分析是什么?教你用 SQL 来搞定
- 帝国cms生成html网站地图的教程步骤
- cad图纸打印出来更高效的方法介绍
- 决斗吧4G LTE:联发科helio步步紧逼,高通裁员步步惊心---国际电子商情
- 有没有Type-C接口的无线投屏器?HDMI、USB、Type-C接口的无线投屏器又有什么区别呢?
- php writeup,PHP_encrypt_1(ISCCCTF) Writeup