MAPREDUCE服务 MRS-YARN开源增强特性:YARN的权限控制
YARN的权限控制
Hadoop YARN的权限机制是通过访问控制列表(ACL)实现的。按照不同用户授予不同权限控制,主要介绍下面两个部分:
- 集群运维管理员控制列表(Admin Acl)
该功能主要用于指定YARN集群的运维管理员,其中, MRS 集群管理员列表由参数“yarn.admin.acl”指定。集群运维管理员可以访问ResourceManager WebUI,还能操作NodeManager节点、队列、NodeLabel等,但不能提交任务。
- 队列访问控制列表(Queue Acl)
为了方便管理集群中的用户,YARN将用户/用户组分成若干队列,并指定每个用户/用户组所属的队列。每个队列包含两种权限:提交应用程序权限和管理应用程序权限(比如终止任意应用程序)。
开源功能:
虽然目前YARN服务的用户层面上支持如下三种角色:
- 集群运维管理员
- 队列管理员
- 普通用户
但是当前开源YARN提供的WebUI/RestAPI/JavaAPI等接口上不会根据用户角色进行权限控制,任何用户都有权限访问应用和集群的信息,无法满足多租户场景下的隔离要求。
增强:
安全模式下,对开源YARN提供的WebUI/RestAPI/JavaAPI等接口上进行了权限管理上的增强,支持根据不同的用户角色,进行相应的权限控制。
各个角色对应的权限如下:
- 集群运维管理员:拥有在YARN集群上执行管理操作(如访问ResourceManager WebUI、刷新队列、设置NodeLabel、主备倒换等)的权限。
- 队列管理员:拥有在YARN集群上所管理队列的修改和查看权限。
- 普通用户:拥有在YARN集群上对自己提交应用的修改和查看权限。