【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 使用的数据库。
mysql-uroot-proot进入数据库后执行:
CREATEDATABASEIFNOTEXISTSrangerDEFAULTCHARACTERSETutf8mb4COLLATEutf8mb4_bin;SHOWDATABASESLIKE'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账号连接。生产环境如果使用独立账号,可以提前建库建用户,也可以让向导自动创建,但两种方式不要混在一起。
数据库配置完成后,点击测试连接。成功时任务日志里会出现类似下面的结果:
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.com,RANGER_USERSYNC -> hadoop2.test.com |
| Slave 分配 | RANGER_TAGSYNC -> hadoop1.test.com |
| 配置校验 | 必填项已填写 |
确认无误后点击开始安装。
8. 等待安装与启动
Ranger 安装会创建数据库表、下发配置、安装组件包并启动服务。这个过程比 Solr 慢一些,正常等任务跑完即可。
向导进入完成页后,说明安装任务已经执行完。
我习惯再多等一会儿,让服务状态从INSTALLED、STARTING真正变成STARTED,不要只看向导完成页。
9. 回到服务页验证 Ranger 状态
回到服务列表,可以看到RANGER已经处于运行中状态。
10. 登录 Ranger Web UI
浏览器访问:
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。
