HDFS、纱线、蜂巢 MRS 中使用 Ranger 实现权限管理全栈式实践
本文分享自华为云社区《MRS中使用Ranger实现权限管理全栈式实践》,作者:啊喔 YeYe 。
前置工作
开通 MRS 普通集群。免费试用30天
安装集群客户端,并了解如何使用
Ranger 与各组件关系
Ranger 为组件提供基于 PBAC 的鉴权插件,供组件服务端运行,目前支持 Ranger 鉴权的组件有 HDFS、Yarn、Hive、HBase、Kafka、Storm 和 Spark2x,后续会支持更多组件。
Ranger 集成 hdfs 权限管控最佳实践
步骤 1:进入集群中的 hdfs 组件,选择右上角的“更多”选项中的启用 ranger 鉴权
步骤 2:进入 hdfs 组件的实例选项中勾选所有选项后,再点“更多”按钮中的“重启实例”按钮,重启 hdfs 的所有实例
步骤 3:进入 mrs 集群的 ranger 组件的首页后,点击 rangeradmin 进入 ranger 组件的管理页面
步骤 4:在 ranger 的 Service Manager 中应会生成 hdfs service name。此时点击 hdfs servicename 就会进入 ranger 配置权限管控 hdfs 的添加、删除、更新、查看策略的界面(可以添加、删除、更新、查看 ranger 权限管控 hdfs 的权限-策略)
步骤 5:点击“Add New Policy”按钮 ,新建一条 ranger 权限管控 hdfs 的策略
步骤 6:ranger 权限管控 hdfs 的验证
1、进入集群客户端,切换用户:su - omm
2、执行 命令如果 ranger 权限管控 hdfs 的策略生效,此时应是 omm 用户不能查看到 hadoop 集群中的/user 中的内容,会提示权限拒绝hdfs dfs –ls /user
Ranger 集成 Yarn 权限管控最佳实践
步骤 1:进入集群中的 yarn 组件,选择右上角的“更多”选项中的启用 ranger 鉴权
步骤 2:在 yarn 组件中配置->全部配置中搜索 acl 后,把yarn.acl.enable = false
更改为yarn.acl.enable = true
进入 yarn 组件的实例选项中勾选所有选项后,再点“更多”按钮中的“重启实例”按钮,重启 yarn 的所有实例
步骤 3:进入 mrs 集群的 ranger 组件的首页后,点击 rangeradmin 进入 ranger 组件的管理页面
步骤 4:点击 yarn service 就会进入 ranger 配置权限管控 yarn 的添加、删除、更新、查看策略的界面(可以添加、删除、更新、查看 ranger 权限管控 yarn 的策略)
步骤 5:点击“Add New Policy”按钮 ,新建一条 ranger 权限管控 yarn 的策略
步骤 6:ranger 权限管控 yarn 的验证
进入集群客户端,切换用户su - omm
执行
Ranger 集成 hive 权限管控最佳实践
步骤 1:进入集群中的 hive 组件,选择右上角的“更多”选项中的启用 ranger 鉴权
步骤 2:进入 hive 组件的实例选项中勾选所有选项后,再点“更多”按钮中的“重启实例”按钮,重启 hive 的所有实例
步骤 3:进入 mrs 集群的 ranger 组件的首页后,点击 rangeradmin 进入 ranger 组件的管理页面
步骤 4:点击 hive service name 就会进入 ranger 配置权限管控 hive 的添加、删除、更新、查看策略的界面
步骤 5:点击“Add New Policy”按钮 ,新建一条 ranger 权限管控 hive 的策略
步骤 6:ranger 权限管控 hive 的验证
进入集群客户端beeline -n test04 -p {password}
输入 后会提示 test04 用户会没有查询 default 库下 user_info 的权限select * from default.user_info;
Ranger 集成 HBase 权限管控最佳实践
步骤 1:进入集群中的 HBase 组件,选择右上角的“更多”选项中的启用 ranger 鉴权。
步骤 2:进入 HBase 组件的实例选项中勾选所有选项后,再点“更多”按钮中的“重启实例”按钮,重启 HBase 的所有实例
步骤 3:进入 mrs 集群的 ranger 组件的首页后,点击 rangeradmin 进入 ranger 组件的管理页面
步骤 4:点击进入 ranger 配置权限管控 HBase 的添加、删除、更新、查看策略的界面(可以添加、删除、更新、查看 ranger 权限管控 HBase 的策略)
步骤 5:点击“Add New Policy”按钮 ,新建一条 ranger 权限管控 HBase 的策略
步骤 6:ranger 权限管控 HBase 的验证
进入集群客户端,切换用户,再输入 hbase shell 进入 hbase 的终端 ,再执行查看表 test03 表的命令:su - test03
scan 'test03'、、
执行 scan ‘test03’ 命令如果 ranger 权限管控 hbase 的策略生效,此时应是 test03 用户不能查看到 hbase 表 test03 的内容不能创建表,会提示权限拒绝。
Ranger 集成 spark 权限管控最佳实践
步骤 1:进入集群中的 spark 组件,选择右上角的“更多”选项中的启用 ranger 鉴权。
步骤 2:进入 spark 组件的实例选项中勾选所有选项后,再点“更多”按钮中的“重启实例”按钮,重启 spark 的所有实例
步骤 3:进入 mrs 集群的 ranger 组件的首页后,点击 rangeradmin 进入 ranger 组件的管理页面
步骤 4:因为 spark 是基于 hive 的,在 ranger 的 ServiceManager 页面中进入 Hadoop sql hive 版块中应会产生 hadoop sql hive 版块。此时点击 hadoop sql hive 版块就会进入 ranger 配置权限管控 spark 的添加、删除、更新、查看策略的界面(可以添加、删除、更新、查看 ranger 权限管控 spark 的策略)
步骤 5:点击“Add New Policy”按钮 ,新建一条 ranger 权限管控 spark 的策略
步骤 6:ranger 权限管控 spark 的验证
进入集群客户端,切换用户:su - omm
切换到 omm 用户后执行 spark-sql 后进入 spark sql 的命令终端环境中 命令如果 ranger 权限管控 spark 的策略生效,此时应是 omm 用户不能查看到 default 库中表 user_info 中的数据的,会提示权限拒绝。
版权声明: 本文为 InfoQ 作者【华为云开发者联盟】的原创文章。
原文链接:【http://xie.infoq.cn/article/8c81eaa31f93e90290700d31f】。文章转载请联系作者。
评论