假设在生产环境Yarn中,总共有四类用户需要使用集群,开发用户、测试用户、业务1用户、业务2用户。为了使其提交的任务不受影响,我们在Yarn上规划配置了五个资源池,分别为 dev_group(开发用户组资源池)、test_group(测试用户组资源池)、business1_group(业务1用户组资源池)、business2_group(业务2用户组资源池)、default(只分配了极少资源)。并根据实际业务情况,为每个资源池分配了相应的资源及优先级等。
ResourceManager上fair-scheduler.xml配置如下:
- <?xml version=“1.0”?>
- <allocations>
- <!– users max running apps –>
- <userMaxAppsDefault>30</userMaxAppsDefault>
- <queue name=“root”>
- <aclSubmitApps> </aclSubmitApps>
- <aclAdministerApps> </aclAdministerApps>
- <queue name=“default”>
- <minResources>2000mb,1vcores</minResources>
- <maxResources>10000mb,1vcores</max