You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apache Ranger YARN插件未生效,队列权限控制失效求助

Ranger YARN插件策略不生效及DataNode无策略缓存问题排查

以下是可能遗漏的配置及排查要点:

1. 插件部署节点错误

Ranger YARN插件需部署在ResourceManager(RM)和NodeManager(NM)节点,而非DataNode。若你误在DataNode安装插件,NM所在节点未部署插件的话,自然无法拉取策略。

  • 确认NM节点已安装Ranger YARN插件,在NM节点执行enable.sh脚本后重启NodeManager服务。

2. Kerberos环境下插件认证配置缺失

集群启用Kerberos后,install.properties需补充Kerberos相关参数,否则插件无法通过认证连接Ranger Admin或YARN服务:

# 添加至install.properties
POLICY_MGR_URL=http://你的RangerAdmin主机:6080
SSL_ENABLED=false # 若Ranger Admin用HTTPS则设为true
KERBEROS_ENABLED=true
KRB5_CONF_PATH=/etc/krb5.conf
RANGER_ADMIN_PRINCIPAL=rangeradmin/_HOST@你的Kerberos域
RANGER_PLUGIN_PRINCIPAL=rangerplugin/_HOST@你的Kerberos域
RANGER_PLUGIN_KEYTAB=/etc/security/keytabs/rangerplugin.keytab
  • 确保yarn用户拥有对应Kerberos主体和keytab,且插件使用的主体具备访问Ranger Admin的权限。

3. YARN权限提供者配置不完整

需明确指定Ranger的授权实现类,仅开启yarn.acl.enable=true不够:

<!-- 在yarn-site.xml中添加或修改 -->
<property>
    <name>yarn.authorization-provider</name>
    <value>org.apache.ranger.authorization.yarn.authorizer.RangerYarnAuthorizer</value>
</property>
  • 同时检查Capacity Scheduler的队列ACL配置,避免设置*(允许所有用户),否则会绕过Ranger的权限控制。

4. Ranger策略配置未覆盖队列权限

检查yarndev仓库的策略是否正确配置:

  • 策略类型选择YARN Queue,指定目标队列路径(如root.queue1)
  • 为目标用户/组分配Submit Application等必要权限
  • 确保策略的「Enable」开关处于开启状态

5. 插件策略拉取日志排查

不要仅查看YARN的nodemanager.log,需检查Ranger插件专属日志:

  • 查看NM节点的Ranger插件日志:/var/log/ranger/yarndev/ranger_yarndev_plugin.log,这里会记录策略拉取的失败原因(如认证错误、网络不通)
  • 查看Ranger Admin日志:/var/log/ranger/admin/ranger-admin.log,确认插件是否成功发起认证和策略请求

6. 插件配置同步与类路径检查

  • 执行enable.sh后,确认生成的ranger-yarn-security.xml等配置文件已同步至YARN的配置目录(如/etc/hadoop/conf/)
  • 检查YARN的类路径是否包含Ranger插件的JAR包,确保插件JAR存在于RM/NM的lib目录(如/usr/hdp/current/hadoop-yarn-resourcemanager/lib/)

内容的提问来源于stack exchange,提问作者CompEng

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 18:03:29