這篇文章將為大家詳細講解有關hadoop中用戶有CREATE權限建表后無HDFS文件的ACL訪問權限異常分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
德宏州網站制作公司哪家好,找創(chuàng)新互聯建站!從網頁設計、網站建設、微信開發(fā)、APP開發(fā)、響應式網站等網站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯建站公司2013年成立到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創(chuàng)新互聯建站。
測試環(huán)境
1.Redhat7.4
2.CDH6.2.0
3.集群啟用了Sentry和Kerberos
在C6集群中使用hive管理員創(chuàng)建一個測試庫acltest,將該庫的CREATE權限賦予ldapff組。ldapff用戶在該庫下創(chuàng)建的表,在命令行使用hadoop命令沒有權限訪問該表的hdfs目錄,提示沒有權限訪問。
為ldapff用戶授權acltest庫的CREATE權限
使用ldapff用戶創(chuàng)建測試表,并插入測試數據
在命令行使用hadoop命令訪問在acltest庫下創(chuàng)建的test表數據目錄
Ldapff用戶擁有acltest庫的CRETATE權限,用戶在該庫下創(chuàng)建了test表,ldapff用戶則是test表的owner,此時查看表的父級目錄/user/hive/warehouse/acltest.db目錄的ACL顯示如下:
hadoop fs -getfacl /user/hive/warehouse/acltest.db
由上圖可以看到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權限
查看此時acltest庫的HDFS路徑ACL權限,顯示如下:
顯示ldapff組有查看acltest庫對應HDFS的讀和執(zhí)行權限,再次訪問test表的HDFS路徑顯示成功
hadoop fs -ls /user/hive/warehouse/acltest.db/test
2.在測試該問題的過程中發(fā)現,將授予ldapff組的SELECT權限刪掉acltest庫對應的HDFS路徑ACL權限發(fā)生了變化
再次查看test表的HDFS路徑發(fā)現又可以正常訪問:
將賦予的CREATE權限刪除,重新為acltest庫賦予CREATE權限后,ACL的權限又再次發(fā)生變化
關于“hadoop中用戶有CREATE權限建表后無HDFS文件的ACL訪問權限異常分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。