【ranger】CDP环境 更新 ranger 权限策略会发生低概率丢失权限策略的解决方法

文章讨论了在更新Ranger权限时,Kafka服务偶尔出现NotAuthorized错误的原因,即Ranger处理deltaupdate可能导致权限丢失。解决方法包括关闭增量更新、修改ranger-admin-site.xml和rangeradminJVM内存,并提供获取RangerPolicyHTTP请求和监控性能的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、问题描述:

我们的 kafka 服务在更新(添加) ranger 权限时,会有极低的概率导致 MM2 同步服务报错,报错内容 Not Authorized。但是查看 ranger 权限是赋予的,并且很早配置的权限策略也会报错。

相关组件版本:

  • CDP : 7.1.7
  • KAFKA: 2.5.0
  • RAGNER: 2.0.0
  • MM2:2.5.0

二、问题原因:

当高频更新 Ranger 策略时,Ranger plugin 处理 delta update 的时候有一定几率触发丢失 Kafka 权限策略的问题,导致个别权限没有被正确加载。

即:我们在 ranger WEB UI 中看到我们的策略确实是已经配置,但是实际上落实到各个服务的策略缓存时发生了丢失。

默认的缓存策略存放位置是在 /var/lib/ranger/ 目录下,这里我以 kafka 为例,kafkaranger 缓存策略在:

ls /var/lib/ranger/kafka/policy-cache/
kafka_cm_kafka.json kafka_cm_kafka_roles.json kafka_cm_kafka_tag.json 

其中的 kafka_cm_kafka.json 就是存放我们实际的缓存策略的文件。

三、解决方案:

关闭 Ranger 组件的增量更新,确认可以规避由此 bug 导致的权限丢失问题

四、操作步骤:

1.更改策略更新配置 (改为全量更新)

1.集群 -> Ranger -> 配置 -> 搜索conf/ranger-admin-site.xml_role safety_valve
-> 点击 “以 XML 格式查看”,插入如下内容:

<property><name>ranger.admin.supports,policy.deltas</name><value>false</value></property>
<property><name>ranger.admin.supports.tag.deltas</name><value>false</value></property>

在这里插入图片描述
2.修改 ranger admin JVM 内存
CM -> 集群 -> Ranger-> 配置 -> 搜索 ranger admin max heap_size
-> 修改配置 8G

在这里插入图片描述
3. 重启 ranger admin 和 mm2 服务。

四、如何获取 Ranger Policy HTTP 请求

CM ->ranger-> 配置 -> 日志 -> INFO改为 DEBUG
在这里插入图片描述

查看日志:
在这里插入图片描述

http 请求如下:

http://mn.test.com:6080/service/plugins/secure/policies/download/cm kafka?supportsPolicyDeltas=true&pluginld=kafka@kafka-03.test.com-cm_kafka&clusterName=Bigdata

查看返回结果:

curl -o rangerdata -u "admin:P@sswOrd2021" "1.5.4.5:6080/service/plugins/secure/policies/download/cm_kafka?supportsPolicyDeltas=true&pluginld=kafka@kafka-03.test.com/cm kafka&clusterName=Bigdata"

## 查看大小
du -sh rangerdata 

五、查看性能

查看修改配置后,ranger 的性能。如:堆内存使用率,非堆内存提交等等。
在这里插入图片描述

问题解决!

### Hive 数据和作业迁移从 MRS 到 CDP 集群的步骤 Hive 是 Hadoop 生态系统中用于数据仓库的重要工具,支持类 SQL 查询。将 Hive 数据和作业从华为云 MRS(MapReduce Service)集群迁移到 CDP(Cloudera Data Platform)集群,需要完成元数据、表结构、实际数据以及相关作业的迁移。以下是详细的迁移流程: #### 1. Hive 元数据迁移 Hive 的元数据存储在外部数据库中(如 MySQL 或 PostgreSQL)。MRS 和 CDP 都支持自定义配置该数据库。 - **导出 MRS 中的 Hive 元数据库** 使用 `mysqldump` 命令将 MRS 集群中的 Hive 元数据导出: ```bash mysqldump -u <username> -p hive_metastore > hive_metastore.sql ``` - **导入到 CDP 集群的 Hive 元数据库** 将导出的 SQL 文件导入目标 CDP 集群使用的元数据库实例: ```bash mysql -u <username> -p hive_metastore < hive_metastore.sql ``` - **验证元数据一致性** 检查 Hive 表结构、分区信息是否完整无误,并确保 CDP 集群的 Hive Metastore 配置正确[^4]。 #### 2. Hive 数据迁移 Hive 表的数据通常存储在 HDFS 或对象存储(如 S3、OBS)上。MRS 使用 OBS 作为底层存储,CDP 支持多种存储后端。 - **使用 DistCp 迁移数据** 如果 MRS 和 CDP 集群处于同一网络环境且可以互通,可以使用 Hadoop 的 `distcp` 工具进行高效数据复制: ```bash hadoop distcp hdfs://mrs-cluster/path/to/hive/tables hdfs://cdp-cluster/path/to/hive/tables ``` - **使用对象存储跨区域复制** 若 MRS 使用的是 OBS,CDP 可以通过兼容的 S3 接口访问 OBS 数据,或者先将数据拷贝至本地 HDFS/S3 存储后再处理。 - **更新 Hive 表路径** 确保 Hive 表指向新的存储位置。可使用 `ALTER TABLE` 修改表路径: ```sql ALTER TABLE table_name SET LOCATION 'hdfs://cdp-cluster/path/to/table'; ``` #### 3. Hive 作业迁移 HiveQL 脚本或 Beeline 脚本可以在 CDP 上直接运行,但需注意版本差异。 - **检查 HiveQL 兼容性** MRS 通常基于 Apache Hive 或 CDH Hive,而 CDP 使用 Hive on Tez 或 Hive LLAP。建议测试关键查询语句是否兼容。 - **调整执行引擎** CDP 支持 Tez、Spark 等执行引擎,默认为 Tez。可通过以下方式切换执行引擎: ```sql SET hive.execution.engine=tez; ``` - **优化参数设置** 根据 CDP 集群资源配置适当调整内存、并发等参数,例如: ```sql SET mapreduce.map.memory.mb=4096; SET mapreduce.reduce.memory.mb=8192; ``` #### 4. 权限与安全迁移 如果 MRS 使用 Ranger 进行权限管理,则 CDP 也支持 Ranger,可同步策略CDPRanger 服务。 - **导出 Ranger 策略** 在 MRS 的 Ranger 管理界面中导出 Hive 相关策略。 - **导入至 CDPRanger** 登录 CDPRanger UI,创建对应的服务并导入策略文件。 - **验证权限** 测试用户能否正常访问 Hive 表,确保 ACL 控制符合预期[^1]。 #### 5. 自动化与调度任务迁移 若 MRS 中使用 Oozie 或 Airflow 调度 Hive 作业,需将这些调度器配置迁移至 CDP。 - **Oozie 作业迁移** 将工作流 XML 文件上传至 CDP 的 HDFS 并注册新 Coordinator。 - **Airflow DAGs** 将 DAG 文件部署至 CDP 环境下的 Airflow 实例,并测试连接性和执行状态。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值