如需了解Ranger架构,可浏览以下页面:
一、环境
操作系统:CentOS6.9
软件版本:Ranger2.0.0,Hive2.3.4
二、安装Ranger2.0.0
1、下载源文件
从github下载。执行:
git clone https://github.com/apache/incubator-ranger.git
下载完成后,看到有一个incubator-ranger文件夹,里面就是源文件。
2、安装maven
因为要用maven编译源文件,所以先安装maven。安装方法见:
3、编译源文件
使用maven编译。进入incubator-ranger目录,然后执行:
mvn clean compile package assembly:assembly install
编译完成后,得到Ranger的安装包(可执行文件),存放在当前目录的target文件夹下:
ll target/*.tar.gz
4、解压安装包
解压安装包到安装目录。执行:
tar -zxvf ranger-2.0.0-SNAPSHOT-admin.tar.gz -C /u01/app/ranger-2.0.0
tar -zxvf ranger-2.0.0-SNAPSHOT-usersync.tar.gz -C /u01/app/ranger-2.0.0
tar -zxvf ranger-2.0.0-SNAPSHOT-hive-plugin.tar.gz -C /u01/app/ranger-2.0.0
admin(Ranger控制台)和usersync(将Linux用户同步至Ranger)的tar包是必须用到的。其他tar包根据需要解压,我这里只用到Hive,所以只解压了hive-plugin(Ranger的Hive插件)的tar包。
5、安装Ranger控制台:Ranger—admin
5.1 修改配置文件install.properties
cd /u01/app/ranger-2.0.0/ranger-2.0.0-SNAPSHOT-admin
vi install.properties
修改的参数如下:
#此参数表示数据库脚本单独执行
setup_mode=SeparateDBA
#数据库类型
DB_FLAVOR=MYSQL
#连接mysql的jar包所在位置
SQL_CONNECTOR_JAR=/u01/app/apache-hive-2.3.4-bin/lib/mysql-connector-java-5.1.47.jar
db_root_user=root
db_root_password=输入密码
db_host=10.200.4.117
db_name=ranger
db_user=root
db_password=输入密码
#设置Ranger里面的用户密码
rangerAdmin_password=输入密码
rangerTagsync_password=输入密码
rangerUsersync_password=输入密码
keyadmin_password=输入密码
#禁用audit审计,如需开启,需安装solr
#audit_store=solr
#audit_solr_urls=
#audit_solr_user=
#audit_solr_password=
#audit_solr_zookeepers=
5.2 执行数据库脚本
数据库脚本dba_script.py是python文件,我这里服务器上面有安装python3.6和2.6两个版本,用3.6版本的时候报错,改为2.6版本正常。执行:
python2.6 ./dba_script.py
5.3 执行初始化设置
执行:
./setup.sh
5.4 启动Ranger Admin
执行:
ranger-admin start
ranger-admin的参数如下:
[root@oracle02 ranger-2.0.0]# ranger-admin
Invalid argument [];
Usage: Only start | stop | restart | metric | version , are supported.
For Metric Usage: metric -type policies | audits | usergroup | services | database | contextenrichers | denyconditions
验证是否安装成功,访问:http://10.200.4.117:6080
用admin登录(密码为前面配置文件install.properties所设置),能正常登录则成功。出现以下页面:
6、安装Ranger Usersync
Ranger Usersync会将linux系统用户同步到ranger数据库。
6.1 修改配置文件install.properties
cd /u01/app/ranger-2.0.0/ranger-2.0.0-SNAPSHOT-usersync
vi install.properties
修改的参数如下:
POLICY_MGR_URL=http://10.200.4.117:6080
SYNC_SOURCE=unix
#多久同步一次数据,单位为分钟
SYNC_INTERVAL=1
logdir=/data/ranger/logs/usersync
6.2 执行初始化设置
执行.:
/setup.sh
6.3 启动Ranger Usersync
执行:
./ranger-usersync-services.sh start
ranger-usersync-services.sh的参数如下:
[root@oracle02 ranger-2.0.0-SNAPSHOT-usersync]# ./ranger-usersync-services.sh
Invalid argument [];
Usage: Only start | stop | restart | version, are supported.
验证是否安装成功:打开Ranger控制台页面,点击“Settings->Users/Groups”,可以看到从Linux同步过来的用户信息则说明成功。如下:
三、Hive插件安装
1、修改配置文件install.properties
cd /u01/app/ranger-2.0.0/ranger-2.0.0-SNAPSHOT-hive-plugin
vi install.properties
修改的参数如下:
POLICY_MGR_URL=http://10.200.4.117:6080
REPOSITORY_NAME=hivedev
默认是不开启审计。
2、启动Ranger HivePlugin
首先把hive的配置文件conf放到/u01/app/ranger-2.0.0/hive/conf下面。创建软链接:
ln -s /u01/app/apache-hive-2.3.4-bin/conf /u01/app/ranger-2.0.0/hive/conf
然后执行:
./enable-hive-plugin.sh
(停止命令为:./disable-hive-plugin.sh)
3、创建Hive Service
打开Ranger控制台页面:
创建Hive Service:
注意:Service Name要与前面配置文件install.properties里面的REPOSITORY_NAME一致。点击Test Connection:
最后点击Add,可以看到Service Manager里面,Hive下面多出一个刚才配置的hivedev。如下:
然后,就可以点开hivedev进行权限配置了。如下:
注意:修改权限配置后,一分钟后生效(时间由前面Ranger Usersync的配置文件install.properties设置),客户端不需要重新登录Hive。
完毕。