分享

nodemanager所需的密钥不可用

pangge2007 发表于 2014-6-24 10:17:20 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 4 5786
node节点报“所需的密钥不可用”的异常,
查看yarn-site.xml中有如下配置项:
<property>
    <description>Keytab for NM.</description>
    <name>yarn.nodemanager.keytab</name>
    <value>/etc/krb5.keytab</value>
  </property>
查看value对应的文件目录,文件不出在。
我想问一下,此文件有什么作用?能够自己配置,怎么配置?

已有(4)人评论

跳转到指定楼层
sstutu 发表于 2014-6-24 13:07:42
本帖最后由 sstutu 于 2014-6-24 13:15 编辑
这个应该是类似身份验证:Kerberos是一种网络协议。krb5.keytab应该是生成的协议文件,如同ssh一样,有生成的自己的文件。

Kerberos 是一种网络认证协议,其设计目标是通过密钥系统为客户机 / 服务器应用程序提供强大的认证服务。该认证过程的实现不依赖于主机操作系统的认证,无需基于主机地址的信任,不要求网络上所有主机的物理安全,并假定网络上传送的数据包可以被任意地读取、修改和插入数据。在以上情况下, Kerberos 作为一种可信任的第三方认证服务,是通过传统的密码技术(如:共享密钥)执行认证服务的。

文件的生成命令如下:
执行命令kinit, 获得一张tgt(ticket granting ticket) ,你需要在配置对应的文件下面生成这个文件,命令如下:
下面红字部分hadoop为用户名
[hadoop@dev80 hadoop]$ kinit -r 24l -k -t /home/hadoop/.keytab hadoop
[hadoop@dev80 hadoop]$ klist
Ticket cache: FILE:/tmp/krb5cc_500
Default principal: hadoop@DIANPING.COM
Valid starting Expires Service principal
09/11/13 15:25:34 09/12/13 15:25:34 krbtgt/DIANPING.COM@DIANPING.COM
renew until 09/12/13 15:25:34

其中/tmp/krb5cc_500就是ticket cache file, 500表示hadoop帐号的uid,默认会读取
用户也可以通过设置export KRB5CCNAME= /tmp/krb5cc_500来指定ticket cache路径
用完之后可以kdestroy销毁掉该ticket cache








回复

使用道具 举报

sstutu 发表于 2014-6-24 13:15:53
上面需要说明的是,你需要先安装这个网络协议,并且对这个网络协议熟悉,否则可能会遇到不少问题。
回复

使用道具 举报

x5136160 发表于 2014-7-15 21:38:59
踩踩 做沙发!
回复

使用道具 举报

lbwahoo 发表于 2014-7-15 23:23:52

踩踩 做沙发!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条