CDH5.14如何集成ranger0.5.3

这篇文章主要介绍CDH5.14如何集成ranger0.5.3,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

成都创新互联公司是一家专注于成都网站设计、做网站与策划设计,南岳网站建设哪家好?成都创新互联公司做网站,专注于网站建设十年,网设计领域的专业建站公司;建站业务涵盖:南岳等地区。南岳做网站价格咨询:028-86922220

CDH5.14的hive版本是1.1.0,经过1周的尝试,开始选择了ranger最新版本1.2.0,最后jdbc连接时因为hive-jdbc版本和hive版本不匹配报错,所以选择ranger0.5.3版本做了集成测试,过程中还是出现了一些问题,感觉hontonworks和cloudera之间不太兼容啊。。。暂时还不是很完美,不过最终算是完成了。
首先安装ranger-admin。
1.cd /home/ranger
下载ranger的tar包:
wget https://archive.apache.org/dist/incubator/ranger/0.5.3-incubating/apache-ranger-incubating-0.5.3.tar.gz
解压tar包:
2.tar -xzvf apache-ranger-incubating-0.5.3.tar.gz
然后 进入解压后的目录:
3./home/ranger/apache-ranger-incubating-0.5.3.tar.gz
编译整个项目,时间比较久,建议nohup挂在后台:
4.nohup mvn clean compile package assembly:assembly install -DskipTests=true -Drat.skip=true -Dmaven.test.skip=true > maven.log &
编译之前先解决一个问题,否则编译通不过:
1.python版本,要python2.7才可以,用2.6或者3都会出现问题,

编译完了之后进入目录
/home/ranger/apache-ranger-1.2.0/target
我们需要的文件都构建好了

我们先把ranger-admin安装先,cp到/usr/local
cp /home/ranger/apache-ranger-incubating-0.5.3/target/ranger-0.5.3-admin.tar.gz /usr/local

解压:
tar -xzvf /usr/local/ranger-0.5.3-admin.tar.gz
进入/usr/local/ranger-0.5.3-admin
修改下install.properties中的配置项,然后
使用root用户执行
bash /usr/local/ranger-0.5.3-admin/setup.sh
就安装好了
然后执行ranger-admin start 即可启动ranger-admin;
浏览器http://hostname:6080如下登录界面,admin/admin 即可登录
用户名:admin
密码:admin

这里着重写一下ranger-hive-plugin的配置和安装。
ranger源码编译完成之后,在ranger目录下有hive插件的包:
/home/ranger/apache-ranger-incubating-0.5.3/target/ranger-0.5.3-hive-plugin.tar.gz

把这个包cp到hiveserver的节点上,放在hive安装目录同级的路径下,比如我们用的cdh,一般hive安装目录在/opt/cloudera/parcels/CDH/lib/hive/,所以我们把ranger-hive-plugin放在/opt/cloudera/parcels/CDH/lib这个目录下,之所以这么做,是因为
等下ranger-hive-plugin集成到hive里面会默认去它的相对路径找依赖jar包,放在这里直接就可以找到,不用像网上说的那样还要去建软连接。
之后修改/opt/cloudera/parcels/CDH/lib/ranger-0.5.3-hive-plugin/install.properties
中配置信息,改完之后运行enable-hive-plugin.sh脚本,在重启hiveserver2,ranger的配置即可生效,不过从cdh中启动hiveserver2是不会生效的,因为它不会去读取hive安装路径下的config目录,而是会动态生成一个config目录,只能手动去启动
命令是 hive --service hiveserver2
后面看看能不能解决这个问题

进入ranger admin的,添加hive规则,测试jdbc连通性会报错,因为我们下的ranger版本自带的是hive1.2.0的版本,hive-jdbc的版本我我们使用的hive版本不同,所以我们要把admin下相关jar包更换掉,

/usr/local/ranger-0.5.3-admin/ews/webapp/WEB-INF/classes/ranger-plugins/hive这个目录下,hive1.2有关的包全部换成我们使用的版本,相关的包都可以在cdh安装路径下可以找到(/opt/cloudera/parcels/CDH-5.14.0-1.cdh6.14.0.p0.24/lib/hive/lib/)

之后就可以正常使用了,用beeline客户端测试ranger使用正常,不过用hue的时候会报错,错误信息显示:java.lang.IllegalArgumentException:Cannot modify hive.server2.proxy.user at runtime.,大概是hive查询的代理用户没有权限去查询,所以需要把一些系统用户加入到hive的白名单中,

在hive-site.xml中添加:

hive.security.authorization.sqlstd.confwhitelist.append
mapred.|hive.|mapreduce.|spark.


hive.security.authorization.sqlstd.confwhitelist
mapred.|hive.|mapreduce.|spark.

即可

以上是“CDH5.14如何集成ranger0.5.3”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


本文名称:CDH5.14如何集成ranger0.5.3
文章分享:http://hbruida.cn/article/jdhgec.html