Ranger HBase / Yarn Repository 快速处理
需要 ttr-release 版本 >= 2.2.3
Ambari 3.0.0 + Free IPA 统一认证体系 示例环境:Kylin V10 SP3 x86,Realm = TEST.COM
# 一、适用场景
出现以下现象时,可以直接按本文快速处理:
- Ranger HBase Repository 创建失败(Ambari 自动化创建或手工创建均异常)
- 返回
{"statusCode":1}或{"statusCode":400,"msgDesc":"... user ... does not exist in ranger admin"}(HBase 默认策略引用用户时最常见) - Ranger Admin/Usersync 日志提示用户解析失败、会话建立失败、或用户/组迟迟不同步
- FreeIPA 已接入(LDAP/LDAPS),但目录用户未完整准备
处理目标
1)补齐 FreeIPA 目录中的关键用户;2)强制触发 Usersync 立即同步,避免等待 1 小时周期。
# 二、最终修复:补齐 FreeIPA 关键系统用户
在排查过程中,通过逐一验证发现:目录侧缺少 Ambari/Ranger 流程中会用到的基础用户,导致后续校验、会话与鉴权链路异常。
# 1、补齐用户(示例)
# HBase 默认策略可能引用(例如 Atlas 相关 policyItem.users)
ipa user-add atlas \
--first=atlas --last=atlas --shell=/sbin/nologin
2
3

提醒
atlas 是否需要,以 Ambari 创建 HBase Repository 的 JSON 或 Ranger 返回的 msgDesc 为准(例如明确提示 “User name: atlas ... does not exist”)。
# 2、这些用户从哪里来
字段依据(来自 Ambari 创建 service 的 JSON)
ambari.service.check.userpolicy.download.auth.userstag.download.auth.userspolicy.grantrevoke.auth.usersdefault-policy.*.policyItem.*.users(HBase 场景常见:默认策略里引用atlas)
这些字段引用的用户如果在 FreeIPA 中不存在,Ranger/Usersync 在会话、校验与鉴权路径上就会出现“创建失败但原因不直观”的现象;若默认策略引用用户不存在,通常会直接返回 400 拒绝创建。
# 三、强制触发 Usersync:为什么必须重启
补齐用户后,并不会立刻在 Ranger Admin 里可见,原因是 Usersync 存在最低同步周期限制。
# 1、最低同步周期:1 小时
Usersync 日志会明确提示:同步周期低于 3600000ms(1h)会被强制回退。

关键点
即便在 Ambari 里把同步间隔改成 1 秒,也会被 Usersync 启动时自动覆盖回 1 小时,因此不能靠改配置“立即生效”。
# 2、因此只能用“重启”触发立即同步
补全用户后建议立刻重启 Usersync,让它执行一次 initial load 同步。

# 四、验证结果:用户同步成功
重启完成后,Usersync 会立刻进行一次同步,日志中能看到用户/组同步成功的统计信息(上面的日志也会有对应提示)。

- 03
- Ranger Admin 证书快速导入脚本02-15