Ranger安装部署 - 扩展组件安装

1. ranger-hdfs plugin安装

1.1 安装ranger hdfs plugin软件包

# pwd
/opt/app/ranger-release-ranger-1.2.0/target
# tar -zxvf ranger-1.2.0-hdfs-plugin.tar.gz

1.2 修改install.properties文件

# pwd
/home/redpeak/app/ranger-release-ranger-1.2.0/target/ranger-1.2.0-hdfs-plugin
# vim install.properties

配置ranger admin的地址
POLICY_MGR_URL = http://localhost:6080

配置hdfs的仓库名
REPOSITORY_NAME=hadoopdev

配置hadoop组件的HADOOP_HOME
COMPONENT_INSTALL_DIR_NAME=/opt/app/hadoop-2.7.3

配置hdfs的审计日志
XAAUDIT.SOLR.ENABLE=true
XAAUDIT.SOLR.URL=http://node1:6083/solr/ranger_audits
XAAUDIT.SOLR.USER=NONE
XAAUDIT.SOLR.PASSWORD=NONE
XAAUDIT.SOLR.ZOOKEEPER=node1:2181,node2:2181,node3:2181/ranger_audits
XAAUDIT.SOLR.FILE_SPOOL_DIR=/var/log/hadoop/hdfs/audit/solr/spool

配置ranger-hdfs-plugin的所属用户、用户组
CUSTOM_USER=hdfs
CUSTOM_GROUP=hadoop

1.3 使hdfs-plugin生效

# pwd
/opt/app/apache-ranger-2.0.0/target/ranger-2.0.0-hdfs-plugin
# ./enable-hdfs-plugin.sh

结果如下:

Ranger安装部署 - 扩展组件安装

1.4 启动hdfs

注:这里是ha高可用模式下的hdfs,

bridge1上启动hdfs和zkfc
[ ranger-2.0.0-hdfs-plugin]# start-dfs.sh
[ ranger-2.0.0-hdfs-plugin]# hadoop-daemon.sh start zkfc

bridge2上启动zkfc
(base) [ scripts]# hadoop-daemon.sh start zkfc

若hdfs已启动,则需要重启

[ ranger-2.0.0-hdfs-plugin]# stop-dfs.sh
[ ranger-2.0.0-hdfs-plugin]# start-dfs.sh

1.5 新建hdfs组件服务

在 Ranger UI 页面添加 HDFS Service。

Ranger安装部署 - 扩展组件安装

  • 标准集群

如果您创建的是标准集群(可到详情页面查看安全模式),请参考下图进行配置:

  Ranger安装部署 - 扩展组件安装

  • 高安全集群

如果您创建的是高安全集群(可到详情页面查看安全模式),请参考下图进行配置:

Ranger安装部署 - 扩展组件安装

Ranger安装部署 - 扩展组件安装

   测试hdfs插件是否正常

Ranger安装部署 - 扩展组件安装

1.6 权限配置示例

上面一节中已经将 Ranger 集成到 HDFS,现在可以进行相关的权限设置。例如给用户 test 授予 /user/foo路径的写/执行权限:

Ranger安装部署 - 扩展组件安装

   单击上图中的 emr-hdfs 进入配置页面,配置相关权限。

Ranger安装部署 - 扩展组件安装

   按照上述步骤设置添加一个 Policy 后,就实现了对 test 的授权,然后用户 test 就可以对 /user/foo 的 HDFS 路径进行访问了。

注: 添加 Policy 默认1 分钟左右,HDFS 才会生效。

2. ranger-yarn plugin安装

2.1 安装ranger-yarn-plugin软件包

# pwd
/optapp/ranger-release-ranger-1.2.0/target
# tar -zxvf ranger-1.2.0-yarn-plugin.tar.gz

2.2 修改install.properties文件

# pwd
/home/redpeak/app/ranger-release-ranger-1.2.0/target/ranger-1.2.0-yarn-plugin
# vim install.properties

配置ranger admin的地址
POLICY_MGR_URL = http://localhost:6080

配置yarn的仓库名
REPOSITORY_NAME=yarndev

配置hadoop组件的HADOOP_HOME
COMPONENT_INSTALL_DIR_NAME=/opt/app/hadoop-2.7.3

配置yarn的审计日志
XAAUDIT.SOLR.ENABLE=true
XAAUDIT.SOLR.URL=http://node1:6083/solr/ranger_audits
XAAUDIT.SOLR.USER=NONE
XAAUDIT.SOLR.PASSWORD=NONE
XAAUDIT.SOLR.ZOOKEEPER=node1:2181,node2:2181,node3:2181/ranger_audits
XAAUDIT.SOLR.FILE_SPOOL_DIR=/var/log/hadoop/yarn/audit/solr/spool

配置ranger-yarn-plugin的所属用户、用户组
CUSTOM_USER=yarn
CUSTOM_GROUP=hadoop

2.3 使yarn-plugin生效

# pwd
/opt/app/apache-ranger-1.2.0/target/ranger-1.2.0-yarn-plugin
# ./enable-yarn-plugin.sh

2.4 重启yarn

# stop-yarn.sh
# start-yarn.sh

2.5 新建yarn组件服务

   登录 Ranger 管理界面,点击 +

 Ranger安装部署 - 扩展组件安装

   配置yarn组件服务,下图的service name要与ranger-yarn-plugin的install.properties配置的REPOSITORY_NAME值要一致。

  • 标准集群

如果创建的是标准集群,请参考下图进行配置

Ranger安装部署 - 扩展组件安装

  •  高安全集群

如果创建的是高安全集群,请参考下图进行配置

Ranger安装部署 - 扩展组件安装

2.6 权限配置示例

如下图所示,点击创建好的 yarn service,进入 policy 配置管理页,即可配置相关策略。

 Ranger安装部署 - 扩展组件安装

点击 “Add New Policy” 创建新的策略

Ranger安装部署 - 扩展组件安装

 配置新的策略,如下,yarn上的队列Queue默认为root.default,以此为例,允许root用户在队列root.default上提交,拒绝hadoop用户在队列root.default上提交

Ranger安装部署 - 扩展组件安装

 接着配置拒绝hadoop用户提交的设置,最后点击保存

Ranger安装部署 - 扩展组件安装

注:策略大概会30秒后生效

3. ranger-hive plugin安装

3.1 安装ranger-hive-plugin软件包

# pwd
/opt/app/ranger-release-ranger-1.2.0/target
# tar -zxvf ranger-1.2.0-hive-plugin.tar.gz

3.2 修改install.properties文件

# pwd
/home/redpeak/app/ranger-release-ranger-1.2.0/target/ranger-1.2.0-hive-plugin
# vim install.properties

配置ranger admin的地址
POLICY_MGR_URL = http://localhost:6080

配置hive的仓库名
REPOSITORY_NAME=hivedev

配置hive组件的HIVE_HOME
COMPONENT_INSTALL_DIR_NAME=/opt/app/apache-hive-2.3.6-bin

配置hive的审计日志
XAAUDIT.SOLR.ENABLE=true
XAAUDIT.SOLR.URL=http://node1:6083/solr/ranger_audits
XAAUDIT.SOLR.USER=NONE
XAAUDIT.SOLR.PASSWORD=NONE
XAAUDIT.SOLR.ZOOKEEPER=node1:2181,node2:2181,node3:2181/ranger_audits
XAAUDIT.SOLR.FILE_SPOOL_DIR=/var/log/hadoop/hive/audit/solr/spool

配置ranger-hive-plugin的所属用户、用户组
CUSTOM_USER=hive
CUSTOM_GROUP=hadoop

3.3 使hive-plugin生效

# pwd
/opt/app/apache-ranger-1.2.0/target/ranger-1.2.0-hive-plugin
# ./enable-hive-plugin.sh

3.4 重启hiveserver2或者hive cli

# cd /opt/app/apache-hive-2.3.6-bin/bin
# ./hiveserver2
或者
# ./hive

3.5 新建hive组件服务

   登录 Ranger 管理界面,点击 +

 Ranger安装部署 - 扩展组件安装

配置hive组件服务,下图的service name要与ranger-hive-plugin的install.properties配置的REPOSITORY_NAME值要一致。

 Ranger安装部署 - 扩展组件安装

3.6 hive权限配置示例

如下图所示,点击创建好的 hive service,进入 policy 配置管理页,即可配置相关策略。

Ranger安装部署 - 扩展组件安装

3.6.1 hive访问权限配置示例

Ranger安装部署 - 扩展组件安装

 配置新的策略,如下。这里hive提供10种控制权限,其中read,write不可用。目前支持的命令为index,lock,select,update,create,drop,alter,all。all表示所有命令。

Ranger安装部署 - 扩展组件安装

接着配置拒绝hadoop用户的操作命令,最后点击保存

Ranger安装部署 - 扩展组件安装

3.6.2 hive列脱敏配置示例

Ranger安装部署 - 扩展组件安装

配置新的脱敏策略,如下:

Ranger安装部署 - 扩展组件安装

列屏蔽允许Ranger为用户配置列的mask策略。mask支持以下8种策略:

  • Redact策略 - 用x屏蔽所有字母字符,用n屏蔽所有数字字符。
  • Partial mask: show last 4 策略 - 仅显示最后四个字符,其他用x代替。
  • Partial mask: show first 4 策略- 仅显示前四个字符,其他用x代替。
  • Hash策略- 用值的哈希值替换原值。
  • Nullify策略 - 用NULL值替换原值。
  • Unmasked (retain original value)策略 - 原样显示。
  • Date: show only year策略 – 仅显示日期字符串的年份部分,并将月份和日期默认为01/01。
  • Custom策略 – 可使用任何有效Hive UDF(返回与被屏蔽的列中的数据类型相同的数据类型)来自定义策略。

3.6.3 hive列过滤配置示例

Ranger安装部署 - 扩展组件安装

添加新的列过滤策略,如下:

Ranger安装部署 - 扩展组件安装

字段过滤红框值为: 列名 + “要过滤的内容”

一般格式为:

  • 等于:列名=“要过滤的内容”
  • 不等于:列名<>“要过滤的内容”

总结

【参考资料】

https://www.cnblogs.com/taojietaoge/p/10808534.html

https://help.aliyun.com/document_detail/66411.html?spm=a2c4g.11186623.6.786.722e4f2caDRDFt

https://cloud.baidu.com/doc/BMR/s/Jjwvxvdh7

https://blog.csdn.net/sudaxhh/article/details/52334652

https://www.jianshu.com/p/203efa603e25 Ranger集成KMS服务

https://blog.csdn.net/lsshlsw/article/details/103930388 Apache Ranger KMS 部署文档

https://www.iteye.com/blog/kingding-2422915  ranger权限管理、rang kms 秘钥管理、kerberos认证服务整合应用

https://blog.csdn.net/qq_35440040/article/details/78780473 Hadoop KMS 透明加密配置以及测试

https://www.cnblogs.com/felixzh/p/10523067.html Ranger-Kafka插件安装

 https://blog.csdn.net/Happy_Sunshine_Boy/article/details/102513629 

相关推荐