YARN核心模块|青训营笔记

107 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的的第8天 今天我学习了YARN资源管理与调度的相关知识。

2.2 Node Manager - 整体架构

9BBAE4E443BD7714E5521DD53BF56544.jpg

2.2 Node Manager主要职责


NM是节点代理,从AM接受命令(启停Container)并执行,通过心跳方式向RM汇报

节点状态并领取命令(清理Container)。

➢与RM交互

心跳汇报节点状态
领取RM下达的命令

➢与AM交互

启动容器
停止容器
获取容器状态

2.2 Node Manager状态机管理- Application


INITING: Application初始化状态,创建工作目录和日志目录;

FINISHING CONTAINERS WAIT:调等待回收Container所占用的资源所处的状 态;

APPLICATION RESOURCE CLEANINGUP:Application所有Container占用的资源被回收后所处的状态;

2.2 Node Manager状态机管理- Container


LOCALIZING:正在从HDFS下载依赖的资源;EXITED WItH SUCCESS: Container 运行脚本正常退出执行;

CONTAINER CLEANUP AFTER KILL:Container被kill 后所处的状态

2.2 Node Manager状态机管理- LocalizedResource


DOWNLOADING:资源处于下载状态;LOCALIZED:资源下载完成;

FAILED:资源下载失败;

2.2 Node Manager节点健康检测机制


节点健康检测机制可时刻掌握NM健康状况并及时汇报给RM, RM根据NM是否健康决定是 否为其调度新任务。
➢自定义Shell

1. NodeHealthScriptRunner 服务周期性执行节点健康状况检测脚本;
2. 若输出以"ERROR" 开头则不健康;

➢检测磁盘损坏数目

1.判断磁盘损坏标准:若-个目录具有读、 写和执行权限,则目录正常;

2.LocalDirsHandlerService 服务周期性检测NM本地磁盘好坏,坏盘数超过阈值则不健康;

学习总结:

青训营快结束了,在这些天的学习中,我学到了许多大数据的运用与一些概念,就是听得有些迷迷糊糊(哭笑),还是要多多实践,把听不懂的内容,反复复习、学习,要有耐心。