ranger,hive,hdfs的三者的权限管理

文章讲述了在Hadoop环境中,用户对HDFS、Hive以及通过Datagrip进行操作时的权限需求。首先,为了在Datagrip上登录并使用Hive,用户需要在HDFS的根目录具有write权限。其次,创建Hive表时,对应HDFS路径需有ALL权限,才能写入数据。通过两个具体场景,总结出链接Datagrip需赋予根目录write权限,而Hive建表则要求相关路径具有ALL权限。
摘要由CSDN通过智能技术生成

ranger,hive,hdfs的三者的权限管理

情况一:连接datagrip

用户在hdfs上的权限
在这里插入图片描述

可以看出只给了用户write权限,尝试登录xwq用户,在datagrip上登录成功

在这里插入图片描述
在这里插入图片描述
经过实验验证:要想使用datagrip或者hive-cli登录hive,需要保证hdfs的权限在/目录至少要有write权限


[root@hadoop102 ~]# kinit xwq
Password for xwq@EXAMPLE.COM: 
[root@hadoop102 ~]# hadoop fs -mkdir /tmp/a
[root@hadoop102 ~]# hadoop fs -mkdir /tmp/a
mkdir: `/tmp/a': File exists
[root@hadoop102 ~]# hadoop fs -mkdir /tmp/a/b
[root@hadoop102 ~]# hadoop fs -ls /
ls: Permission denied: user=xwq, access=READ_EXECUTE, inode="/":hdfs:hadoop:drwx------
[root@hadoop102 ~]# hadoop fs -rm -r -f /tmp/a
rm: Permission denied: user=xwq, access=EXECUTE, inode="/":hdfs:hadoop:drwx------
[root@hadoop102 ~]# 

write权限可以创建文件夹
execute是执行的命令,在只有write权限时是无法执行成功
所以可以将/目录的权限设置为write

**

情况二:需要有建表的语句能力

**
需要hdfs在相对应的目录有ALL权限

use easypm;
drop table ods_StockAuthority_full;
create external table IF NOT EXISTS ods_StockAuthority_full
(
    ID          string comment '主键',
    Name        string comment '货仓',
    Plant       string comment '名称',
    CreatedTime string comment '创建时间'
)
    comment '库存授权'
    partitioned by (dt string)
    row format delimited fields terminated by '\001'
    LOCATION '/warehouse/poc/easy_pm/ads/ads_group_result_stat2';

在这里插入图片描述

在这里插入图片描述
更改为ALL权限
在这里插入图片描述
执行成功
在这里插入图片描述

总结

1.如果要链接datagrip,需要给/目录赋予write权限
2.如果要在hive中建表,那么需要往hdfs路径上写数据,则需要保持相对应的路径要有ALL权限

终于将hive和hdfs的权限管理给搞定了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ysksolution

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值