一、yarn 常用命令
1. 查看任务
yarn application -list
yarn application -list -appStates [ALL/NEW/NEW_SAVING/SUBMITTED/ACCEPTED/RUNNING/FINISHED/FAILED/KILLED]
yarn application -kill [application_id]
2. 查看日志
yarn logs -applicationId [application_id]
yarn logs -applicationId [application_id] -containerId [container_id]
3. 查看尝试运行任务
yarn applicationattempt -list [application_id]
yarn applicationattempt -status [appattempt_id]
4. 查看容器
yarn container -list <ApplicationAttemptId>
yarn container -status <ContainerId>
5. 查看节点状态
yarn node -list -all
6. 查看队列
yarn queue -status <QueueName>
7. 更新配置
yarn rmadmin -refreshQueues
8. 设置队列优先级
yarn application -appID [application_id] -updatePriority 5
二、yarn 生产环境核心参数
1. ResourceManager 相关
yarn.resourcemanager.scheduler.class
:配置调度器,默认容量调度器yarn.resourcemanager.scheduler.client.thread-count
:ResourceManager 处理调度器请求的线程数量,默认 50
2. NodeManager 相关
yarn.nodemanager.resource.detect-hardware-capabilities
:是否让 yarn 自己检测硬件进行配置,默认 falseyarn.nodemanager.resource.count-logical-processors-as-cores
:是否将虚拟核数当作 CPU 核数,默认 falseyarn.nodemanager.resource.pcores-vcores-multiplier
:虚拟核数和物理核数乘数,例如:4核8线程,该参数就应设为 2,默认 1.0yarn.nodemanager.resource.memory-mb
:NodeManager 使用内存,默认8Gyarn.nodemanager.resource.system-reserved-memory-mb
:NodeManager 为系统保留多少内存(和上一个参数二选一配即可)yarn.nodemanager.resource.cpu-vcores
:NodeManager 使用 CPU 核数,默认 8 个yarn.nodemanager.pmem-check-enabled
:是否开启物理内存检查限制 container,默认打开yarn.nodemanager.vmem-check-enabled
:是否开启虚拟内存检查限制 container,默认打开yarn.nodemanager.vmem-pmem-ratio
:虚拟内存物理内存比例,默认 2.1
3. Container 相关
yarn.scheduler.minimum-allocation-mb
:容器最最小内存,默认 1Gyarn.scheduler.maximum-allocation-mb
:容器最最大内存,默认 8Gyarn.scheduler.minimum-allocation-vcores
:容器最小 CPU 核数,默认 1 个yarn.scheduler.maximum-allocation-vcores
:容器最大 CPU 核数,默认 4 个