1.x
- master/slave: jobTracker/taskTracker
- JobTrack: 单点、压力大
- 仅仅只能够支持mapreduce作业,资源利用率低、运维成本高
yarn
- 资源管理 rm nm
- 作业调度 am
client
向rm提交任务,杀死任务等
am
- 每一个应用程序对应一个am
- am想rm申请资源,用于在nm上启动对应的task
- 数据切分
- 为每个task向rm申请资源(container)
- nm通信
- 任务的监控
nm
- 干活,多个
- 想rm发送心跳信息、任务的执行情况
- 接收来着rm的请求来启动任务
*处理来着am的命令
rm
处理来着客户端的请求:提交、杀死
启动、监控am
监控nm
资源相关
container
- 任务的运行抽象,memory,cpu
- task是运行在container里面的
- 可以运行am、也可以运行map/resuce task
网友评论