【问题标题】:livy curl request error for Kerberos Cloudera HadoopKerberos Cloudera Hadoop 的 livy curl 请求错误
【发布时间】:2019-05-05 04:33:54
【问题描述】:

在 kerberized CDH 5.10.x 上配置了 livy 服务器,它在端口 8998 上运行良好,但 curl 请求给出以下错误,

curl --negotiate -u : http://xxxxxxx:8998/sessions

错误 403

HTTP 错误:403

访问问题 /会话。原因:

 GSSException:没有有效的凭据
提供(机制级别:未能找到任何 Kerberos
凭据)

由 Jetty 提供支持://

无法理解为什么请求没有通过 kerberos 安全层?

【问题讨论】:

    标签: apache-spark hadoop cloudera livy


    【解决方案1】:

    此错误表明您的 kerberos 票证很可能不存在或已过期。

    您是否运行 kinit 来创建您的 kerberos 票证?

    【讨论】:

    • 是的 Tagar,我再次执行 kinit 并创建了票证,但仍然无法正常工作。
    【解决方案2】:

    出于测试目的,您能否以hdfs 用户身份使用(您可以在 HDFS 角色机器下找到密钥表 - Namenode、Datanode /var/run/cloudera-scm-agent/process/hdfs/hdfs.keytab)

    kinit -kt hdfs.keytab hdfs/hostname@REALM

    或 kinit 作为您的用户 kinit user@REALM

    然后试试

    curl --negotiate -u : -X GET -H "Content-Type: application/json" http://xxxx.xxxx:8998/sessions

    为了找到 pyspark 会话,

    curl --negotiate -u : -X POST --data '{"kind": "pyspark"}' -H "Content-Type: application/json" http://xxxxx:8998/sessions

    【讨论】:

    • 目前我正在使用系统用户运行,我尝试了上面的命令但它不起作用,它给出的错误是“kinit: Generic preauthentication failure while getting initial credentials”。
    • 系统用户叫什么名字?
    • 类似于 sys。此用户能够访问 hadoop 服务而没有安全问题。
    • 你能以 sys 的身份编织,然后再试一次
    • 我同意!我应该添加 hdfs kinit 用于测试目的。同样,他正在使用系统用户(试图了解它是什么)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多