Sentry管理Hive目录acl -setacl不生效

芒果2年前技术文章917

CDH在启动Sentry后/user/hive/warehouse这个目录 hdfs手动setacl会不生效
首先确保hdfs参数dfs.namenode.acls.enabled=true;还有另一个acl
0F296062-C217-4461-8429-9795FE70DB72.png
hive这边确认参数:
6BB7E656-1646-4531-A4F4-092377EBF986.png
ps:  报错:FAILED: InvalidConfigurationExceptionhive.server2.authentication can’t be none in non-testing mode
Hive服务—>配置---->范围—>Hive(服务范围)—>类别—>主要---->高级–>sentry-site.xml的hive服务高级配置代码段,如图:[sentry.hive.testing.mode]
664A6CDA-8146-4CD5-9CCE-5DDF45099C0B.png
首先我们先找一个目录测试下
hdfs dfs -getfacl /mgtest
B1556D87-8872-4AAD-B6DB-BBA697381773.png
[hdfs@cdh01 ~]$ hdfs dfs -setfacl -R -m group:hive:rwx /mgtest
[hdfs@cdh01 ~]$ hdfs dfs -getfacl /mgtest
6D50CCE0-B27B-46C4-B035-2C7BF90D2E49.png
接下来我们测试
测试目录:/user/hive/warehouse/mgtest.db
hdfs dfs -setfacl -R -m group:mgtest02:rwx /user/hive/warehouse/mgtest.db
hdfs dfs -getfacl /user/hive/warehouse/mgtest.db
2EA3B95B-7AF3-4017-BA9D-18FBDC33A79A.png
可以看出来 我们set的并没有生效。
解决方法:
进入beeline中
首先我们创建一个
CREATE ROLE mgtest01;
授予其对mgtest01库的管理权限
grant all on database mgtest to role mgtest01 with grant option;
查看mgtest01角色的权限列表
show grant role mgtest01;

image.png
GRANT ROLE mgtest01 TO GROUP mgtest03;
06418B8C-D562-4A99-AFBD-C698D69F0DB4.png
查看hdfs权限
hdfs dfs -getfacl /user/hive/warehouse/mgtest.db
D035A47F-4054-4799-838C-449307BA576B.png
再来一次试试
GRANT ROLE mgtest01 TO GROUP mgtest04;
查看权限
hdfs dfs -getfacl /user/hive/warehouse/mgtest.db
F1C3CDFD-2A86-4240-BDC6-3BA321B8CFA3.png
ps:
查看所有角色:show roles;
查看当前角色:show current roles;
查看当前用户:select current_user();
Ps: admin授权操作
CREATE ROLE admin;
grant all on server server1 to role admin;
GRANT ROLE admin TO GROUP hive;


标签: 大数据运维

相关文章

CDH实操--kudumaster迁移

CDH实操--kudumaster迁移

1 概述本次kudumaster迁移,中间不需要停kudu集群(会涉及滚动重启kudu角色); 注:若因为任务持续运行导致kudu停止超时可手动一台台停止-启动2 master迁移将cdh2中的ma...

Hive优化之配置参数的优化(一)

Hive优化之配置参数的优化(一)

 Hive是大数据领域常用的组件之一,主要是大数据离线数仓的运算,关于Hive的性能调优在日常工作和面试中是经常涉及的一个点,因此掌握一些Hive调优是必不可少的一项技能。影响Hive效率的...

chengying-4.0登入接口逆向

chengying-4.0登入接口逆向

首先是登入的加密url:http://xxxxx/api/v2/user/login参数1. username:admin@dtstack.com2. password:614bb9438210c69...

trino组件对接alluxio(三)

trino组件对接alluxio(三)

本文是基于已经部署了trino和alluxio的基础上,进行的trino与alluxio的组件对接,alluxio已经开启了高可用模式。安装部署1、增加alluxio配置在core-site.xml和...

helm安装部署trino对接hive(一)

helm安装部署trino对接hive(一)

前提:本文前提是基于hive组件已经提前安装的情况下,安装部署好trino容器之后进行对hive组件的对接。helm trino地址:https://artifacthub.io/packages/h...

CDH实操--客户端安装

CDH实操--客户端安装

概述安装CDH客户端,主要是方便在CDH部署节点以外,通过客户端的方式连接CDH上的hdfs,hive和hbase服务1、安装jdk(适配CDH即可,一般1.8)2、获取安装包3、部署安装包把安装包解...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。