蜂巢开启哨兵需要注意的点

  

本文要点不在于配置,需要学习怎么配置请看https://blog.51cto.com/smilemask/2043930

  

1。添加jar无法使用,原因是因为哨兵认为引用第三方jar包可以绕过权限来获取到你想要的数据,那么真实需要引用如何解决?鼎晖提供一个参数hive.reloadable.aux.jars。路径,该参数已经替换原来辅助jar的路径,在你上传到hiveserver2后指定自由目录下,如果有包名的重复,可以使用重载命令重新加载。那么如何开发需要测试怎么办呢?通过创建一个不存在的函数绕过,举例,我想引用一个json-serde包,在hql里执行使用jar创建函数testfc作为“测试”“hdfs:///tmp/json-serde_jar_file.jar”;这句话会报的错,但是会把你的jar包引用到那么hs2中,然后执行sql语句即可,需要注意格兰特uri授权

  

2。开启hdfs哨兵同步。基本上蜂巢开启哨兵后也会开启次选项,这样权限在sql层面和文件系统层面都得到了安全限制。开启后,你指定的同步目录比如/user/蜂巢/仓库下的库或者表会变成蜂巢:771年蜂巢,然后用hadoop fs getfacl查看可以得到这个库或者表一些特殊用户权限,这个权限和蜂巢或者黑斑羚上设置的权限就一样了。当哨兵退回后,用户和组权限会变回原来的设置。值得注意的是,如果是在hdfs新增的数据,那么还是开启hdfs同步后的权限,蜂巢:蜂巢771,这个需要额外处理,因为用户都无法查看这个数据。如果是一些外部表路径比如/tmp/aaa/数据库/表,在你设置额外同步目录/tmp/aaa时,aaa目录并不会有771蜂巢:蜂巢权限,到库层级才会变成那样,原因是蜂巢里面有默认配置的数仓目录

蜂巢开启哨兵需要注意的点