一、安装hdfs插件
从源码安装ranger的服务器上拷贝hdfs的插件到你需要安装的地方
1、解压安装
# tar zxvf ranger-2.1.0-hdfs-plugin.tar.gz -C /data1/hadoop
2、修改插件配置文件,如下
# cd /data1/hadoop/ranger-2.1.0-SNAPSHOT-hdfs-plugin/
修改install.properties文件
主要修改以下几个参数:
POLICY_MGR_URL= http://192.168.4.50:6080 #policy地址,也就是ranger-admin地址
REPOSITORY_NAME=hadoopdev #服务名字,在ranger-admin前台创建的时候,需要与这个参数值一样。
XAAUDIT.SOLR.ENABLE=true #开启审计日志
XAAUDIT.SOLR.URL=http://192.168.4.50:6083/solr/ranger_audits #solr地址
CUSTOM_USER=hduser #定义插件用户,我猜这个值是启动集群的用户
CUSTOM_GROUP=hduser
3、修改hdfs配置文件
# vim hdfs-site.xml
添加如下配置:
<property>
<name>dfs.namenode.inode.attributes.provider.class</name>
<value>org.apache.ranger.authorization.hadoop.RangerHdfsAuthorizer</value>
</property>
<property>
<name>dfs.permissions</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions.ContentSummary.subAccess</name>
<value>true</value>
</property>
4、启动插件
# sudo ./enable-hdfs-plugin.sh (需要root权限)
二、安装yarn插件
1、解压安装
# tar zxvf ranger-2.0.0-yarn-plugin.tar.gz -C /data1/hadoop
2、修改配置文件install.properties
修改如下属性:
POLICY_MGR_URL=http://192.168.4.50:6080
REPOSITORY_NAME=yarndev
XAAUDIT.SOLR.ENABLE=true
XAAUDIT.SOLR.URL=http://192.168.4.50:6083/solr/ranger_audits
CUSTOM_USER=hduser
CUSTOM_GROUP=hduser
3、修改yarn-site.xml配置文件
添加如下属性:
<property>
<name>yarn.acl.enable</name>
<value>true</value>
</property>
<property>
<name>yarn.authorization-provider</name>
<value>org.apache.ranger.authorization.yarn.authorizer.RangerYarnAuthorizer</value>
</property>
4、启动yarn插件
# ./enable-yarn-plugin.sh
# 重启集群
三、前台配置
1、hdfs配置
(1) 登录:http/192.168.4.50:6080
(1) 添加服务
点击加号添加服务
点击测试
配置完了不要忘记点击保存。
配置完在前台界面如下:
(1) 配置策略
点击hadoopdev进行策略的配置
默认已经有两个策略,这里点击右上角进行策略的添加
保存。
(1) 测试yjt这个用户是否还有对/out1这个目录有权限。
分析:
从上述可以看到,对于这个目录只要没有对用户或者组加决绝的ACL,正常是可以读取的,但是上述我们对yjt这个用户对/out1这个目录进行了策略控制(拒绝访问)的限制,可以看到,目前这个用户对于该目录没有权限读取了,说明配置成功。
2、yarn配置
(1) 添加服务
配置完可以进行测试连接,看配置是否ok
(1) 添加策略
对yarn的限制,主要是对于用户对队列的访问,以及任务提交限制
添加权限控制
(1) 测试yjt这个用户是否可以提交任务
从上可以看出,yjt这个用户,不允许提交任务到hadoop队列。