本文主要是介绍【ranger】CDP环境 更新 ranger 权限策略会发生低概率丢失权限策略的解决方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、问题描述:
我们的 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
为例,kafka
的 ranger
缓存策略在:
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 的性能。如:堆内存使用率,非堆内存提交等等。
问题解决!
这篇关于【ranger】CDP环境 更新 ranger 权限策略会发生低概率丢失权限策略的解决方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!