这是我参与「第四届青训营 」笔记创作活动的的第8天 今天我学习了YARN资源管理与调度的相关知识。
2.2 Node Manager - 整体架构
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本地磁盘好坏,坏盘数超过阈值则不健康;
学习总结:
青训营快结束了,在这些天的学习中,我学到了许多大数据的运用与一些概念,就是听得有些迷迷糊糊(哭笑),还是要多多实践,把听不懂的内容,反复复习、学习,要有耐心。