hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

这篇文章将为大家详细讲解有关hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

德宏州网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、响应式网站等网站项目制作,到程序开发,运营维护。创新互联建站公司2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站

异常描述    
  • 测试环境

1.Redhat7.4

2.CDH6.2.0

3.集群启用了Sentry和Kerberos

在C6集群中使用hive管理员创建一个测试库acltest,将该库的CREATE权限赋予ldapff组。ldapff用户在该库下创建的表,在命令行使用hadoop命令没有权限访问该表的hdfs目录,提示没有权限访问。

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

为ldapff用户授权acltest库的CREATE权限

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

使用ldapff用户创建测试表,并插入测试数据

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

在命令行使用hadoop命令访问在acltest库下创建的test表数据目录

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

异常分析    

Ldapff用户拥有acltest库的CRETATE权限,用户在该库下创建了test表,ldapff用户则是test表的owner,此时查看表的父级目录/user/hive/warehouse/acltest.db目录的ACL显示如下:

hadoop fs -getfacl /user/hive/warehouse/acltest.db

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

由上图可以看到test表的父级目录(/user/hive/warehouse/acltest.db),ldapff组的访问权限为“group:ldapff:---”,因为ldapff组无权限访问表的父级目录,所以即使ldapff是test表的owner也无法正常访问相应的HDFS目录。

异常解决    

由于ldapff用户组无法访问/user/hive/warehouse/acltest.db目录,因此通过授权SELECT权限的方式解决。

1.为ldapff用户授权acltest库的SELECT权限

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

查看此时acltest库的HDFS路径ACL权限,显示如下:

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

显示ldapff组有查看acltest库对应HDFS的读和执行权限,再次访问test表的HDFS路径显示成功

hadoop fs -ls /user/hive/warehouse/acltest.db/test

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

2.在测试该问题的过程中发现,将授予ldapff组的SELECT权限删掉acltest库对应的HDFS路径ACL权限发生了变化

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

再次查看test表的HDFS路径发现又可以正常访问:

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

将赋予的CREATE权限删除,重新为acltest库赋予CREATE权限后,ACL的权限又再次发生变化

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析


关于“hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


文章名称:hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析
标题链接:http://azwzsj.com/article/jespop.html