首页 > 其他分享 >如何使用Sentry管理Hive仓库目录外的其他目录的acl同步

如何使用Sentry管理Hive仓库目录外的其他目录的acl同步

时间:2022-10-04 13:32:08浏览次数:70  
标签:Sentry db Hive ACL testdatabase 目录

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。


Fayson的github:

​https://github.com/fayson/cdhproject​


提示:代码块部分可以左右滑动查看噢


1.文档编写目的



用户在CDH集群中启用了Sentry后,会遇到在/user/hive/warehouse仓库目录之外的目录建库后,在HDFS上查看该数据库及库下的表和文件ACL权限没有同步。本篇文章Fayson主要介绍如何使用Sentry管理Hive仓库目录外的其他目录的ACL同步。


Fayson在前面也有介绍Sentry权限同步的文章《​​如何使用Sentry管理Hive外部表权限​​​》、《​​如何使用Sentry管理Hive外部表(补充)​​​》和《​​Sentry赋予server1权限给hive以外用户时ACL不同步问题分析​​》


  • 测试环境说明

1.CM5.15.0和CDH5.14.2


2.ACL问题复现



用于测试的testa用户所属组为groupa,使用testa用户访问Hive创建一个testdatabase库,并在该库下创建test_temp表插入测试数据。


1.使用testa用户访问Hive,执行建库建表及插入数据操作


grant all on database testdatabase to role groupa_role;
create database testdatabase location '/dw/testdatabase.db';
use testdatabase;
create table test_temp (id int, name string);
insert into table test_tmp values(1,'fayson');
grant all on database testdatabase to role groupa_role;
create database testdatabase location '/dw/testdatabase.db';
use testdatabase;
create table test_temp (id int, name string);
insert into table test_tmp values(1,'fayson');

(可左右滑动)


如何使用Sentry管理Hive仓库目录外的其他目录的acl同步_hadoop


2.在命令行使用hdfs命令查看/dv/testdatabase.db及库下表和数据文件的ACL


[root@cdh03 ~]# hadoop fs -getfacl /dw/testdatabase.db
[root@cdh03 ~]# hadoop fs -getfacl /dw/testdatabase.db/test_temp
[root@cdh03 ~]# hadoop fs -getfacl /dw/testdatabase.db/test_temp/000000_0

(可左右滑动)


如何使用Sentry管理Hive仓库目录外的其他目录的acl同步_hdfs_02


通过上面的截图可以看到在Hive默认仓库目录外其它目录创建库、表及数据文件的ACL权限均为同步。


3.如下放一个在Hive默认仓库目录的表已同步ACL权限的截图


如何使用Sentry管理Hive仓库目录外的其他目录的acl同步_hive_03


3.配置目录ACL同步



对于存储在/user/hive/warehouse仓库目录之外的Hive数据,需要在HiveMetastore和Sentry服务中配置其它的目录。目前,Cloudera Manager生成的配置仅在hdfs-site.xml中设置了Hive的默认仓库目录,对于仓库目录之外的需要额外的配置,下面介绍如何进行配置:


1.登录Cloudera Manager进入HDFS服务界面


如何使用Sentry管理Hive仓库目录外的其他目录的acl同步_hive_04


2.在配置页面搜索“sentry.hdfs.integration.path.prefixes”,在配置项中增加数据目录


如何使用Sentry管理Hive仓库目录外的其他目录的acl同步_hdfs_05


保存配置并重启相应服务。


如何使用Sentry管理Hive仓库目录外的其他目录的acl同步_hdfs_06


4.ACL权限同步验证



1.在命令行使用hdfs命令查看/dv/testdatabase.db及库下表和数据文件的ACL


[root@cdh03 ~]# hadoop fs -getfacl /dw/testdatabase.db
[root@cdh03 ~]# hadoop fs -getfacl /dw/testdatabase.db/test_temp
[root@cdh03 ~]# hadoop fs -getfacl /dw/testdatabase.db/test_temp/000000_0

(可左右滑动)


如何使用Sentry管理Hive仓库目录外的其他目录的acl同步_hive_07


通过配置了/user/hive/warehouse以外的目录后,HDFS上查看可以看到ACL权限已同步。


5.总结



1.集群启用Sentry后,实现Hive默认仓库目录(/user/hive/warehouse)以外路径的ACL权限同步,则需要在HiveMetastore和Sentry服务中配置其它路径。


2.可以在HDFS服务的sentry.hdfs.integration.path.prefiexs参数中进行配置,增加需要Sentry同步的目录即可。Cloudera Manager会将配置项生成到HiveMetastore和Sentry服务对应的配置文件hive-site.xml和sentry-site.xml中。



提示:代码块部分可以左右滑动查看噢


为天地立心,为生民立命,为往圣继绝学,为万世开太平。

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。



推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

如何使用Sentry管理Hive仓库目录外的其他目录的acl同步_hive_08

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操


标签:Sentry,db,Hive,ACL,testdatabase,目录
From: https://blog.51cto.com/u_14049791/5731218

相关文章

  • Hive CLI禁用补充说明
    温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。Fayson的github:​​https://github.com/fayson/cdhproject​​提示:代码块部分可......
  • 0637-5.16.1-CDH集群中var目录占用空间大问题分析
    作者:唐辉1文档编写目的Fayson今天在观察集群的时候,发现CM节点/var目录使用空间异常的大,使用率达到93%,为防止目录空间使用满,导致CM界面告警。于是对该目录进行详细分析测试......
  • 0458-Hive数据类型校验问题分析
    温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。Fayson的github:​​https://github.com/fayson/cdhproject​​提示:代码块部分可......
  • 0508-如何使用Hadoop的Archive处理小文件
    温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。Fayson的github:​​https://github.com/fayson/cdhproject​​提示:代码块部分可......
  • 0468-如何使用DBeaver访问Kerberos环境下的Hive
    温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。Fayson的github:​​https://github.com/fayson/cdhproject​​提示:代码块部分可......
  • 0841-7.1.6-Aqua Data Studio工具安装及访问安全环境的Hive和Impala
    作者:冯庆煜1.文档编写目的AquaDataStudio是一款完整IDE的数据库开发工具,它提供3种主要功能:数据查询与管理工具。比对数据工具与源控制和文件系统的整合工具。帮助你创建,编......
  • 0840-6.3.4-Aqua Data Studio工具安装及访问安全环境的Hive和Impala
    作者:冯庆煜1.文档编写目的AquaDataStudio是一款完整IDE的数据库开发工具,它提供3种主要功能:数据查询与管理工具。比对数据工具与源控制和文件系统的整合工具。帮助你创建,编......
  • 0816-CDP Hive3升级说明
    文档编写目的CDH5中的Hive版本是1.1,而CDP7中的Hive版本为3。Hive3相对Hive1更新特别多,比如支持全新的ACIDv2机制,并且底层使用Tez和内存进行查询,相比MR的方式性能提升超过10......
  • 0869-7.1.7-如何在CDP中使用Hive Bulkload批量导入数据到HBase
    1.文档编写目的在遇到将Hive中的数据同步到HBase时,一般都是通过在Hive中创建映射HBase的表,然后通过insert的方式来实现,在数据量小的时候,往往还能接受,但是如果是大批量数据,除......
  • Redis学习目录
     目录持续更新...​​Redis简介​​​​Redis安装及基本配置​​​​Redis持久化​​​​Redis开发及管理实战​​​​Redis高可用及集群​​​​Redis多API开发​​ ......