HDFS中將普通用戶增加到超級用戶組supergroup


 
圖1為flume agent日志報錯,圖2為使用root用戶列出flume的目錄報錯沒權限
Permission denied :user=lume,access=WRITE.............
解決方法:
操作步驟如下:
 
1、在Linux執行如下命令增加supergroup
 
groupadd supergroup
 
2、如將用戶yarn增加到supergroup中,再執行:
 
usermod -a -G supergroup flume
 
3、同步系統的權限信息到HDFS:
 
su - hdfs -s /bin/bash -c "hdfs dfsadmin -refreshUserToGroupsMappings"
 
4、驗證
 
1) 將/user/flume目錄的權限由700,修改為770
 
su - flume -s /bin/bash -c "hadoop fs -chmod 770 /user/flume"
 
2) 通過加到supergroup組中的flume用戶去列這個目錄:
 
su - flume -s /bin/bash -c "hadoop fs -ls /user/flume"
[root@cdh-1 ~]# su - flume -s /bin/bash -c "hadoop fs -ls /user/flume"
Found 1 items
drwxr-xr-x   - flume supergroup          0 2019-04-01 00:00 /user/flume/events
 
可成功列出目錄即表示操作成功。
 
 
而后,我將root用戶也加入了supergroup組中,可直接執行hdfs命令:
[root@cdh-1 ~]# hdfs dfs -ls hdfs:///user/hive
Found 1 items
drwxrwxrwt   - hive hive          0 2019-03-22 10:50 hdfs:///user/hive/warehouse

在測試環境中遇到時間戳的問題:
Expected timestamp in the Flume event headers, but it was null
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM