【发布时间】:2018-11-09 02:13:25
【问题描述】:
我有一个三节点集群,上面安装了 Kerberos 和 Ranger。
对于我作为普通用户 (tom) 使用的一个用例,我有点困惑。我的 /home/tom 中有 hdfs.headless.keytab 和 hbase.headless.keytab 文件,所以我可以使用
[tom@master keytabs]$ ls /home/tom -l
total 8
-r--r----- 1 tom tom 373 Oct 26 02:32 hbase.headless.keytab
-r--r----- 1 tom tom 368 Nov 8 18:59 hdfs.headless.keytab
因此,如果我想写入 HDFS,我总是可以通过上述文件启动 Kerberos 票证:
[tom@master root]$ klist
klist: No credentials cache found (ticket cache FILE:/tmp/krb5cc_500)
[tom@master keytabs]$ kinit -kt /home/tom/hdfs.headless.keytab hdfs-bazargani_lab@BAZARGANI.COM
[tom@master keytabs]$ klist
Ticket cache: FILE:/tmp/krb5cc_500
Default principal: hdfs-bazargani_lab@BAZARGANI.COM
Valid starting Expires Service principal
11/08/18 19:12:10 11/09/18 19:12:10 krbtgt/BAZARGANI.COM@BAZARGANI.COM
renew until 11/08/18 19:12:10
现在我要激活 HBase 的票证:
[tom@master keytabs]$ kinit -kt /home/tom/hbase.headless.keytab hbase-bazargani_lab@BAZARGANI.COM
[tom@master keytabs]$ klist
Ticket cache: FILE:/tmp/krb5cc_500
Default principal: hbase-bazargani_lab@BAZARGANI.COM
Valid starting Expires Service principal
11/08/18 19:30:01 11/09/18 19:30:01 krbtgt/BAZARGANI.COM@BAZARGANI.COM
renew until 11/08/18 19:30:01
现在,当我运行以下命令(写入 HDFS)时,我得到:
[tom@master keytabs]$ hdfs dfs -mkdir /tom
mkdir: Permission denied: user=hbase, access=WRITE, inode="/tom":hdfs:hdfs:drwxr-xr-x
我不知道为什么我不能在 HBase 之前为 HDFS 初始化票证,当我写给 HDFS 时它现在认为它是 HBase 用户并且不会让我执行上述操作写入 HDFS..我不能 su 到 hdfs,因为我不知道密码..有人可以解释我如何设置一个名为 tom 的主体,它可以执行 HBase 和 HDFS 票证操作吗?
【问题讨论】:
-
tom 文件夹的权限是什么?,尝试将其设置为 chmod 777 并执行命令,看看是否可以解决问题