前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ranger2.0版本与Hive的兼容性问题

Ranger2.0版本与Hive的兼容性问题

作者头像
陈猿解码
发布2023-02-28 14:40:12
1K0
发布2023-02-28 14:40:12
举报
文章被收录于专栏:陈猿解码

最近在研究hdfs,hive与ranger配合完成ACL访问控制,本文总结下遇到的问题。

ranger-admin的安装部署与ranger的hdfs插件、hive插件的安装,官网有简单描述,过程也比较简单,另外网上还有很多文章详细说明,就不展开描述。

ranger-admin,ranger的hdfs插件都安装部署好后,在ranger-admin的web界面上配置对应的策略就可以实现HDFS文件/目录的访问控制了。

但在ranger的hive插件安装部署好后,出现ranger-admin连不上hive的现象。网上搜索了一翻,发现ranger中连接hive的相关jar包都是3.0版本的,而我们实际使用的hive版本是2.X,版本不匹配,所以出现连接失败的报错。

这个问题的解决办法是将ranger-admin中hive相关的jar包都删除,然后从hiveserver中拷贝相关的包到ranger-admin对应目录中。

再次测试,连接成功,但又报了新的错误。同时发现在hiveserver节点上,使用beeline可以正确连接hive,但执行任何sql语句均报错,例如:

而另外一台未安装ranger插件的hiverserver节点,使用beeline连接并执行sql语句则没有任何问题。因此怀疑新的问题是和ranger的hive插件有关。

查看了hiveserver的报错信息,并结合hive的源码,发现了问题:ranger的hive插件进行权限控制过程中会判断sql操作类型,而该类型的定义是在3.0以上版本才有的。即ranger2.0版本不支持hive2.X版本。

解决办法:重新编译了ranger-1.2版本,这次仅将编译后的插件安装到hiveserver中,也就是ranger-admin使用的是2.0版本并使用hive2.X版本的相关jar包,hiverserver中的ranger插件是1.2版本的。

正确安装部署后,暂时还未遇到什么坑,hiveserver中的beeline连接查询都正常,同样ranger-admin也能正确连接hive并进行查询,简单验证相关的访问控制策略也能正确生效。

当然,将hive升级到3.X版本配套ranger的2.0版本可能会是更好的选择。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 陈猿解码 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档