【Ambari Plus】02.Ranger 安装

Ranger 安装

Ranger 是后面做权限治理的核心入口。HDFS、Hive、HBase、Kafka、Knox 等组件接入 Ranger 之后,策略才可以集中管理,访问记录也能统一审计。

本篇默认已经完成前一篇的 Solr 安装,并且 http://hadoop1.test.com:8983/solr/ 可以正常打开。

配置项 本次填写
Ranger 数据库类型 MySQL / MariaDB
数据库地址 hadoop1.test.com
数据库端口 3306
数据库名 ranger
数据库用户 root
数据库密码 root
Ranger 相关密码 Rangeradmin123

::: warning

这里为了演示,把 MariaDB 用户名和密码写成了 root / root。生产环境建议单独创建 Ranger 数据库账号,只授予 ranger 库权限,并使用高复杂度密码。

:::

1. 准备 Ranger 数据库

hadoop1.test.com 上登录 MariaDB,先创建 Ranger 使用的数据库。

sh 复制代码
mysql -uroot -proot

进入数据库后执行:

sql 复制代码
CREATE DATABASE IF NOT EXISTS ranger
  DEFAULT CHARACTER SET utf8mb4
  COLLATE utf8mb4_bin;

SHOW DATABASES LIKE 'ranger';

能查到 ranger,再回到 Ambari Plus 页面继续安装。

2. 选择 Ranger 服务

进入 服务与组件 ,点击 新增服务 ,在服务列表里勾选 RANGER

如果 Solr 已经安装完成,服务列表里会显示 SOLR 已安装,RANGER 是可选状态。这里不要再勾选别的服务,先把 Ranger 单独装完。

3. 分配 Ranger Admin 和 Usersync

Master 分配页里,本次保留默认分配:

组件 节点
RANGER_ADMIN hadoop2.test.com
RANGER_USERSYNC hadoop2.test.com

RANGER_ADMIN 是 Ranger 控制台,RANGER_USERSYNC 用来同步用户和用户组。先放在同一台机器,后面做 LDAP / FreeIPA 接入时排查会更直观。

4. 分配 Ranger Tagsync

Slave 分配页里,RANGER_TAGSYNC 放在 hadoop1.test.com

Tagsync 主要用于后续和 Atlas 标签体系联动。当前先安装组件,后面 Atlas 装好以后再决定是否真正启用标签策略。

5. 配置数据库连接

进入配置页后,先处理 Ranger 数据库。重点是把数据库地址统一写成 hadoop1.test.com,不要写短主机名,也不要混用 IP。

配置项 填写值
DB_FLAVOR MYSQL
db_name ranger
db_user root
db_password root
db_host hadoop1.test.com
ranger.jpa.jdbc.url jdbc:mysql://hadoop1.test.com:3306/ranger?useLegacyDatetimeCode=false&serverTimezone=UTC
create_db_dbuser No
db_root_user root
db_root_password root
ranger_privelege_user_jdbc_url jdbc:mysql://hadoop1.test.com:3306

这里我把 create_db_dbuser 设为 No,因为前面已经手动创建了 ranger 数据库,而且演示环境直接使用 root 账号连接。生产环境如果使用独立账号,可以提前建库建用户,也可以让向导自动创建,但两种方式不要混在一起。

数据库配置完成后,点击 测试连接。成功时任务日志里会出现类似下面的结果:

text 复制代码
Connected to DB Successfully!
DB connection check completed.
Host checks completed. Command completed successfully!

6. 补齐 Ranger 自身账号密码

配置页顶部如果提示还有必填项没填,可以点击 待填写 过滤器。Ranger 本次需要补齐 4 类密码:

统一填写 Rangeradmin123

配置项 用途
Ranger Admin user's password Ranger Web UI 的 admin 登录密码。
Ranger KMS keyadmin user's password Ranger KMS keyadmin 用户密码。
Ranger Tagsync user's password Tagsync 内部用户密码。
Ranger Usersync user's password Usersync 内部用户密码。

补齐后,顶部会显示 待填写 0,下一步按钮也会恢复可点击。

7. 确认 Ranger 安装清单

确认页里重点看三块:

检查项 本次结果
新增服务 RANGER
Master 分配 RANGER_ADMIN -> hadoop2.test.comRANGER_USERSYNC -> hadoop2.test.com
Slave 分配 RANGER_TAGSYNC -> hadoop1.test.com
配置校验 必填项已填写

确认无误后点击 开始安装

8. 等待安装与启动

Ranger 安装会创建数据库表、下发配置、安装组件包并启动服务。这个过程比 Solr 慢一些,正常等任务跑完即可。

向导进入完成页后,说明安装任务已经执行完。

我习惯再多等一会儿,让服务状态从 INSTALLEDSTARTING 真正变成 STARTED,不要只看向导完成页。

9. 回到服务页验证 Ranger 状态

回到服务列表,可以看到 RANGER 已经处于运行中状态。

10. 登录 Ranger Web UI

浏览器访问:

text 复制代码
http://hadoop2.test.com:6080/login.jsp

登录账号:

用户名 密码
admin Rangeradmin123

登录后进入 Ranger Service Manager 页面,可以看到 HDFS、HBase、YARN、Knox、Solr、Kafka、Sqoop、Trino 等策略入口。

这一步完成后,Ranger 只是"平台已经装好"。继续安装 Knox、HDFS、Hive、Kafka 之前,我建议先完成 Kerberos 认证启用LDAP 目录接入,再让后续组件逐个接入 Ranger Plugin。