首页 > 解决方案 > Windows 上的 Jupyter 笔记本 - 使用带有 kerberos 的 sparkmagic

问题描述

我在 jupyter 笔记本上使用带有 sparkmagic 的 Kerberos 时遇到了一些困难。我通过 anaconda 在 Windows 机器上安装了 jupyter,并且能够将其设置为访问测试 HDInsight 集群。那只是为了证明我可以让它通过 sparkmagic 访问任何东西。所以我知道一般的 jupyter/sparkmagic 设置是有效的。

我真正需要它做的是与本地集群对话。这是通过 kerberos 运行和保护的。我的困难在于让 sparkmagic 使用 windows kerberos 票。我找不到任何有关设置 sparkmagic 配置文件进行身份验证的说明。此外,当我在 Windows 上运行以下命令时,当我连接到 livy 时会出现身份验证错误:

curl --negotiate --user myusername:mypassword --url http://livyserver:8998/sessions

如果我在 ssh 到边缘节点时运行同一行,它会正确验证。我使用相同的用户名和密码来验证 Windows、边缘节点和 Hue。

在 sparkmagic 配置文件中,我尝试输入我的用户名和密码,如下所示:

{
  ... stuff ...
  "kernel_scala_credentials":{
      "username":"myusername",
      "password":"mypassword",
      "url": "http://livyserver:8998",
      "auth": "Kerberos"
    }
  ... the rest is following example_config.json ...
} 

那么,如何设置 winkerberos 和 sparkmagic 来兑现 windows 票?还是说,尽管使用了相同的凭据,但我需要 Windows 从 linux 机器使用的身份验证方法中获取 kerberos 票证?

标签: pysparkanacondajupyter-notebookkerberos

解决方案


推荐阅读