更新时间:2026-01-09 GMT+08:00
分享

添加Yarn的Ranger访问权限策略

操作场景

Yarn作为核心的资源调度框架,承担着集群计算资源的分配与任务调度核心职责,平台内存在多个角色的Yarn用户(如开发人员提交业务计算任务、运维人员管理集群资源、不同业务部门用户抢占队列资源)。若缺乏精细化的Yarn权限管控,普通用户可能随意占用大量集群资源,导致核心业务任务调度延迟;无权限用户误操作修改Yarn集群配置,引发服务稳定性风险;不同业务部门共用队列时,资源争抢现象频发,影响业务正常推进。Ranger提供了针对性的权限配置方案,管理员可通过Ranger直接为Yarn用户配置Yarn管理员权限及Yarn队列资源管理权限。

本文档将指导Ranger管理员完成相关权限配置操作,助力实现Yarn资源的精细化管控,兼顾业务需求与集群安全。

Ranger Yarn上面各个权限之间相互独立,没有语义上的包含与被包含关系。当前支持下面两种权限:

  • submit-app:提交队列任务权限
  • admin-queue:管理队列任务权限

虽然admin-queue也有提交任务的权限,但和submit-app权限之间并没有包含关系。

前提条件

  • 集群中已安装Ranger服务且服务运行正常。
  • 集群中已创建需要配置权限的用户、用户组或Role,如果是新创建的用户,需等待用户自动同步至Ranger后才可以配置相关权限策略。

操作步骤

  1. 登录FusionInsight Manager界面,选择“集群 > 服务 > Yarn”。
  2. 选择“配置 > 全部配置”,搜索参数“yarn.acl.enable”,修改参数值为“true”。如果该参数值已经为“true”,则无需处理。

    图1 配置参数“yarn.acl.enable”

  3. 使用Ranger管理员用户登录Ranger WebUI页面,具体操作可参考登录Ranger WebUI界面
  4. 在首页中单击“YARN”区域的组件插件名称如“Yarn”。
  5. 单击“Add New Policy”,添加Yarn权限控制策略。
  6. 根据业务需求配置相关参数。

    表1 Yarn权限参数

    参数名称

    描述

    Policy Name

    策略名称,可自定义,不能与本服务内其他策略名称重复。

    Policy Conditions

    IP过滤策略,可自定义,配置当前策略适用的主机节点,可填写一个或多个IP或IP段,并且IP填写支持“*”通配符,例如:192.168.1.10,192.168.1.20或者192.168.1.*。

    Policy Label

    为当前策略指定一个标签,可以根据这些标签搜索报告和筛选策略。

    Queue

    队列名称,支持通配符“*”。

    如需子队列继承上级队列权限,可打开递归开关按钮。

    • Non-recursive:关闭递归
    • Recursive:打开递归

    Description

    策略描述信息。

    Audit Logging

    该策略命中时是否生成审计日志。

    • Yes:当用户触发该策略的权限校验时,无论校验结果是允许(Allow)还是拒绝(Deny),会生成一条审计日志。
    • No:当用户触发该策略的权限校验时,不会生成任何审计日志。

    Allow Conditions

    策略允许条件,配置本策略内允许的权限及例外。

    在“Select Role”、“Select Group”、“Select User”列选择已创建好的需要授予权限的Role、用户组或用户,单击“Add Conditions”,添加策略适用的IP地址范围,单击“Add Permissions”,添加对应权限。

    • submit-app:提交队列任务权限
    • admin-queue:管理队列任务权限
    • Select/Deselect All:全选/取消全选

    如需让当前条件中的用户或用户组管理本条策略,可勾选“Delegate Admin”使这些用户成为受委托的管理员。被委托的管理员可以更新、删除本策略,它还可以基于原始策略创建子策略。

    如需添加多条权限控制规则,可单击按钮添加。如需删除权限控制规则,可单击按钮删除。

    Exclude from Allow Conditions:配置策略例外条件。

    Deny All Other Accesses

    是否拒绝其他所有访问。

    • True:拒绝其他所有访问
    • False:设置为False,可配置Deny Conditions。

    Deny Conditions

    策略拒绝条件,配置本策略内拒绝的权限及例外,配置方法与“Allow Conditions”类似。拒绝条件的优先级高于“Allow Conditions”中配置的允许条件。

    Exclude from Deny Conditions:配置排除在拒绝条件之外的例外规则。

    表2 常见权限配置场景

    任务场景

    角色授权操作

    设置Yarn管理员权限

    1. 在首页中单击“YARN”区域的组件插件名称,例如“Yarn”。
    2. 选择“Policy Name”为“all - queue”的策略,单击按钮编辑策略。
    3. 在“Allow Conditions”区域,单击“Select User”下选择框选择用户。

    设置用户在指定Yarn队列提交任务的权限

    1. 在“Queue”配置队列名。
    2. 在“Allow Conditions”区域,单击“Select User”下选择框选择用户。
    3. 单击“Add Permissions”,勾选“submit-app”。

    设置用户在指定Yarn队列管理任务的权限

    1. 在“Queue”配置队列名。
    2. 在“Allow Conditions”区域,单击“Select User”下选择框选择用户。
    3. 单击“Add Permissions”,勾选“admin-queue”。

  7. (可选)添加策略有效期。在页面右上角单击“Add Validity period”,设置“Start Time”和“End Time”,选择“Time Zone”。单击“Save”保存。如需添加多条策略有效期,可单击按钮添加。如需删除策略有效期,可单击按钮删除。
  8. 单击“Add”,在策略列表可查看策略的基本信息。等待策略生效后,验证相关权限是否正常。

    如需禁用某条策略,可单击按钮编辑策略,设置策略开关为“Disabled”。

    如果不再使用策略,可单击按钮删除策略。

相关文档

相关文档