配置YARN严格权限控制
配置场景
在安全模式的多租户场景下,一个集群可以支持多个用户使用以及支持多个用户任务提交、运行,用户之间是不可见,需要有一个权限控制机制,使用户的任务信息不被其他用户获取。
例如,用户A提交的应用正在运行,此时用户B登录系统并查看应用列表,用户B不应该访问到A用户的应用信息。
配置描述
- 查看Yarn服务配置参数
参考修改集群服务配置参数进入Yarn服务参数“全部配置”界面,在搜索框中输入表1中参数名称。
- 查看Mapreduce服务配置参数
参考修改集群服务配置参数进入Mapreduce服务参数“全部配置”界面,在搜索框中输入表2中参数名称。
表2 参数描述 参数
描述
默认值
mapreduce.cluster.acls.enabled
MR JobHistoryServer权限控制启用开关。该参数为客户端参数,当JobHistoryServer服务端开启权限控制之后该参数生效。
true
yarn.webapp.filter-entity-list-by-user
MR JobHistoryServer严格视图启用开关,开启后,登录用户只能查看该用户有权限查看的内容。该参数为JobHistoryServer的服务端参数,表示JHS开启了权限控制,但是否要对某一个特定的Application进行控制,是由客户端参数:“mapreduce.cluster.acls.enabled”决定。
说明:此参数适用于MRS 3.x及后续版本集群。
true
以上配置会影响restful API和shell命令结果,即以上配置开启后,restful API调用和shell命令运行所返回的内容只包含调用用户有权查看的信息。
当yarn.acl.enable或mapreduce.cluster.acls.enabled设置为false时,即关闭Yarn或Mapreduce的权限校验功能。此时任何用户都可以在Yarn或MapReduce上提交任务和查看任务信息,存在安全风险,请谨慎使用。