TT Bigdata TT Bigdata
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件专题

    • 安装指导
    • 魔改分享
  • 高阶玩法

    • 实战 Kerberos
    • 实战 Ranger
  • 版本专题

    • 更新说明
    • BUG临时处理
  • 实验室

    • VIEW插件
    • JIRA速查
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 二开指导

    • 前端开发
    • 后端开发
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • APT仓库增量更新
    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Ambari-Metrics
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

    • 各组件代码
    • 通用代码模板
  • 国产化&其他系统

    • Kylin V10系列
    • Rocky系列
    • Ubuntu系列
  • Grafana监控方案

    • Ambari-Metrics插件
    • Infinity插件
  • 优化增强

    • 组件配置调优
  • 支持&共建

    • 蓝图愿景
    • 合作共建
    • 服务说明
登陆
GitHub (opens new window)

JaneTTR

数据酿造智慧,每一滴都是沉淀!
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件专题

    • 安装指导
    • 魔改分享
  • 高阶玩法

    • 实战 Kerberos
    • 实战 Ranger
  • 版本专题

    • 更新说明
    • BUG临时处理
  • 实验室

    • VIEW插件
    • JIRA速查
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 二开指导

    • 前端开发
    • 后端开发
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • APT仓库增量更新
    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Ambari-Metrics
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

    • 各组件代码
    • 通用代码模板
  • 国产化&其他系统

    • Kylin V10系列
    • Rocky系列
    • Ubuntu系列
  • Grafana监控方案

    • Ambari-Metrics插件
    • Infinity插件
  • 优化增强

    • 组件配置调优
  • 支持&共建

    • 蓝图愿景
    • 合作共建
    • 服务说明
登陆
GitHub (opens new window)
  • HA-高可用安装-其他发行版|低于2.2.3版本

  • HA-高可用安装-ttr-release | 大于2.2.2 版本

  • FreeIPA & LDAP 下的搭配与实战【企业生产】

    • [Step1] Ambari 安装 Ranger 并配置 FreeIPA + LDAP
      • 一、整体架构与安装目标
        • 1.1 组件关系一图流
        • 1.2 本文落地目标
      • 二、准备工作:FreeIPA 创建 Ranger Bind 用户
        • 2.1 创建用户
        • 2.2 绑定账户设计说明
      • 三、Ambari 安装 Ranger 并配置 FreeIPA LDAP
        • 3.1 进入 Ranger 安装向导
        • 3.2 JDBC 信息(略过但要知道在做什么)
        • 3.3 RANGER USER INFO:COMMON CONFIGS(LDAP 连接)
        • 3.3.1 COMMON CONFIGS 参数解释
        • 3.4 GROUP CONFIGS(组搜索,必须先开)
        • 3.4.1 组搜索字段解读
        • 3.5 USER CONFIGS(用户搜索)
        • 3.5.1 用户搜索字段解读
        • 3.6 ADVANCED(高级 LDAP 参数)
      • 四、HA 场景必踩坑:HTTP Principal 缺失与修复
        • 4.1 根因解读:FreeIPA 的 service-add 依赖 host-add
        • 4.2 修复入口
        • 4.3 修复后安装结果
    • [Step2] 制作 Ranger Usersync 证书并应用组件
    • [Step3] 制作 Ranger Admin 证书并应用组件
    • [Step4]Ranger HDFS Repository 创建失败修复
    • [Step5]Ranger HBase Repository 创建失败修复
  • 踩坑汇总

  • 解决方案

  • 组件安装-Ranger
  • FreeIPA & LDAP 下的搭配与实战【企业生产】
JaneTTR
2026-02-14
目录

[Step1] Ambari 安装 Ranger 并配置 FreeIPA + LDAP

需要 ttr-release 版本 >= 2.2.3

Ambari 3.0.0 + Free IPA 统一认证体系 本文示例环境:Kylin V10 SP3 x86,Realm = TEST.COM

# 一、整体架构与安装目标

Ranger 在统一认证体系中承担「权限中心」角色,用户与组数据来自 FreeIPA(LDAP),认证能力来自 Kerberos(KDC/Realm)。

# 1.1 组件关系一图流

组件 职责 说明
FreeIPA 用户/组目录 Ranger 通过 LDAP 查询用户与组
Kerberos 认证体系 Ranger 与插件侧使用 SPNEGO/Keytab
Ranger Admin 权限控制台 依赖 LDAP + Kerberos
Ranger Plugin 资源侧执行 HDFS/Hive/Kafka 等插件执行鉴权

# 1.2 本文落地目标

  • Ambari 正常安装 Ranger Admin
  • Ranger Admin 能通过 LDAPS 查询 FreeIPA 中用户与组
  • Ranger HA 场景下补齐 HTTP/ranger-ha.hadoop.com principal,避免安装流程中断

# 二、准备工作:FreeIPA 创建 Ranger Bind 用户

Ranger 连接 LDAP 必须使用绑定账户(Bind DN),建议专门创建,避免使用 admin。

# 2.1 创建用户

ipa user-add rangerbind \
  --first=Ranger \
  --last=Bind \
  --shell=/sbin/nologin
1
2
3
4

设置密码:

ipa passwd rangerbind
1

示例密码:

rangerbind@2026
1

创建过程与结果如下:

image-20260214230047827

image-20260214230405815

# 2.2 绑定账户设计说明

项目 推荐做法 理由
账户类型 专用账号(nologin) 避免用于交互登录
权限 只读查询为主 符合最小权限
密码策略 单独维护/可轮换 降低泄露风险
审计 清晰可追踪 Ranger LDAP 查询日志可定位来源

提示

Bind DN 只负责“查目录”,不参与 Kerberos 票据,不建议复用业务账号。

# 三、Ambari 安装 Ranger 并配置 FreeIPA LDAP

这一节按 Ambari 向导步骤走,截图与参数一一对应。

# 3.1 进入 Ranger 安装向导

开始安装 Ranger:

image-20260214230614409

一路 Next 到第四步配置页:

image-20260214230810299

# 3.2 JDBC 信息(略过但要知道在做什么)

该步骤核心是让 Ranger Admin 能连接 DB(策略、用户同步元数据等都依赖 DB)。

项目 典型内容 说明
JDBC URL jdbc:mysql://... DB 地址
Driver com.mysql.jdbc.Driver 驱动类
User/Pass rangeradmin / *** DB 账号

注意

JDBC 配置不正确会导致 Ranger Admin 初始化失败,但与 LDAP 配置是两条链路,不要混在一起排查。

# 3.3 RANGER USER INFO:COMMON CONFIGS(LDAP 连接)

进入 Ranger User Info,先配置 COMMON CONFIGS:

image-20260214231019679

选择 LDAP/AD,并填写:

URL: ldaps://ipa.test.com:636
Bind DN: uid=rangerbind,cn=users,cn=accounts,dc=test,dc=com
Bind Password: rangerbind@2026
1
2
3

填写完成示例:

image-20260209105339591

# 3.3.1 COMMON CONFIGS 参数解释

配置项 示例值 作用
LDAP URL ldaps://ipa.test.com:636 强制 SSL,避免明文
Bind DN uid=rangerbind,... 用于登录 LDAP
Bind Password rangerbind@2026 Bind DN 的密码
Base DN dc=test,dc=com 目录树根

提示

如果使用 ldaps,确保 Ranger 节点信任 FreeIPA CA(否则会出现证书校验问题)。

# 3.4 GROUP CONFIGS(组搜索,必须先开)

先配置组搜索的原因:Ranger 需要先能“找组”,才能把用户映射到组(权限几乎都按组来管)。

开启 Enable Group Search First:

image-20260214231722726

推荐填写:

Group Member Attribute  = member
Group Name Attribute    = cn
Group Object Class      = groupOfNames
Group Search Base       = cn=groups,cn=accounts,dc=test,dc=com
Group Search Filter     = (cn=*)
1
2
3
4
5

# 3.4.1 组搜索字段解读

字段 典型值 含义
groupOfNames groupOfNames FreeIPA 常见组类型
member member 组成员 DN 列表字段
cn cn 组名称字段
Search Base cn=groups,... 从这个路径开始找组

# 3.5 USER CONFIGS(用户搜索)

最后配置用户搜索,并勾选 Enable User Search:

image-20260214232044761

推荐填写:

User Name Attribute       = uid
User Object Class         = inetOrgPerson
User Search Base          = cn=users,cn=accounts,dc=test,dc=com
User Search Filter        = (uid=*)
User Search Scope         = sub
User Group Name Attribute = memberof, ismemberof
1
2
3
4
5
6

# 3.5.1 用户搜索字段解读

字段 典型值 说明
uid uid FreeIPA 用户名字段
inetOrgPerson inetOrgPerson 用户对象类
memberof memberof 反向组关系字段
sub sub 递归查子树

提示

memberOf 依赖目录端维护反向关系,有些环境字段名可能不同(本文按 FreeIPA 常见默认值)。

# 3.6 ADVANCED(高级 LDAP 参数)

Advanced LDAP Settings 只有选择 LDAP/AD 方式才会出现:

image-20260214233408179

这里重点确认两点:

  • 仍然使用 ldaps://
  • 密码仍是 rangerbind@2026

继续下一步:

image-20260214233517068

进入常规安装执行页:

image-20260214233632986

# 四、HA 场景必踩坑:HTTP Principal 缺失与修复

开启 Ranger HA 时,Ambari 在创建 principal 阶段可能失败:

Failed to create principal, HTTP/ranger-ha.hadoop.com@TEST.COM
ipa: ERROR: The host 'ranger-ha.hadoop.com' does not exist to add a service to.
1
2

报错弹窗(截图 12/14):

image-20260214233918922

# 4.1 根因解读:FreeIPA 的 service-add 依赖 host-add

FreeIPA 的规则:

  • 先存在 host 对象(Host Entry)
  • 才能在该 host 上挂 HTTP/<fqdn> service principal

HA 虚拟域名 ranger-ha.hadoop.com 往往不是实际主机名,因此 IPA 中默认不存在该 host entry。

# 4.2 修复入口

处理办法可参考

Ranger HA 虚拟域名 Principal 缺失修复

修复完成后回到 Ambari 继续安装/重试。

# 4.3 修复后安装结果

修复完成后再次执行安装流程,可看到任务正常推进:

image-20260215000754985

最终成功界面:

image-20260215001823028

#Ranger Admin#Ranger HA#Kerberos#SPNEGO#Haproxy#Ambari#自动化安装#Kylin V10
[Step2] Ranger Admin HA 自动化安装
[Step2] 制作 Ranger Usersync 证书并应用组件

← [Step2] Ranger Admin HA 自动化安装 [Step2] 制作 Ranger Usersync 证书并应用组件→

最近更新
01
Ranger Admin LDAP 认证报 Bad credentials 分析
02-15
02
Ranger Admin LDAP 认证报 Bad credentials 处理
02-15
03
Ranger Admin 证书快速导入脚本
02-15
更多文章>
Theme by Vdoing | Copyright © 2017-2026 JaneTTR | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式