一、安裝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隊列。