存在的问题
Jon tracker 因为任务过多出现坏死的情况
多个组件之间资源不共享
资源抢占严重
YARN基于标签调度 是对NodeManager进行标签化
YARN: 另外一种资源管理器
统一的资源管理和任务调度
中的抽象资源------region
yarn.scheduler.capacity.root.QueueA.user-limit-factor表示用户使用队列资源的倍数
yarn.scheduler.capacity.root.QueueA.minimum-user-limit-percent最低资源保障率
yarn.scheduler.capacity.root.QueueA.state 查看队列状态
yarn.scheduler.capacity.root.QueueA.capacity 设置容量
yarn.log-aggregation-enable 启用日志聚集功能
yarn.nodemanager.resource.memory-mb:可以分配给容器的物理内存大小
yarn.nodemanager.vmem-pmem-ratio :虚拟内存跟物理内存的比值
yarn.nodemanager.resource.cpu-vcore:可分配给容器的CPU核数
组件架构:
client:入口
Resource Manager主备:负责整个集群的资源管理和任务调度 NM和A故障 N运行
Node Manager: 抽象资源(内存 CPU)
App Mstr:
容量调度器(以队列为单位划分资源)的特点
容量保证:每个队列设置最低保证和资源使用上限
灵活性:当一个队列资源有剩余 可以暂时共享给当前的那些需要资源的队列
支持优先级
多重租赁:支持多用户共享集群和多应用程序同时运行
动态更新配置文件:根据需要动态修改配置函数
任务选择