pyspark - 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 票证?
解决方案
推荐阅读
- ruby-on-rails - 在 Rails 6 中排序 hstore 属性是如何工作的?
- r - 代码重构 - 代码改进建议
- angular - 在 AmChart 烛台图表上以 1 分钟间隔添加/显示日期时间
- string - Delphi 10.3:转换为字符串时出现 Blob 问题
- php - PHP中加载的Excel文档上的一个表列太多
- python - 验证损失在大范围内随机平衡,但训练损失正在完美减少
- python - 使用 EBO 时 OpenGL 崩溃
- typescript - 如何纠正类型 typeof 类没有索引?
- python - 无法从现有的两个列在 Pandas 数据框中创建新列
- node.js - MongoDB 更新数组内数组中的项