Zeppelin, Livy, 我可以得到 proxyUser

Posted

技术标签:

【中文标题】Zeppelin, Livy, 我可以得到 proxyUser【英文标题】:Zeppelin, Livy, Can I get the proxyUser 【发布时间】:2019-02-27 15:58:03 【问题描述】:

我正在尝试在我的 scala (%livy) 脚本中获取用于登录 Zeppelin 的用户 ID。 我尝试在线搜索并注意到有一个名为“proxyUser”的属性。但是,我无法弄清楚如何在我的 Scala 脚本中获取此属性。

我尝试转储我的 SparkContext (spark) 和 ScalaContext (sc) 中的所有属性,但没有发现任何看起来很有希望的东西。

我不知道还能去哪里看,任何指导将不胜感激......

最终目标是从我将构建的自定义库中访问登录用户。因此,理想情况下,我想获得某种包含登录 ID 的只读属性,并将该结构传递给我的自定义库,然后再提取用户 ID。 换句话说,我不希望脚本作者将用户 ID 作为字符串变量传递(因为我不希望他们试图将自己伪装成另一个用户)。

【问题讨论】:

【参考方案1】:

在设置页面中为 Livy 解释器启用“用户模拟”选项。一旦您在解释器设置下拉菜单中选择“每个用户”-“隔离”模式,此选项就会出现。 查看此link 了解更多信息

【讨论】:

您好 Saravan,感谢您的回复,但是,这并不能回答我的问题。我们的 Zeppelin 服务器已经启用了用户模拟。我的问题是如何获取用户登录的 ID。具体来说,我怎样才能让这行代码适用于 scala (%livy)? val loggedInUser = >>【参考方案2】:

在拔掉我的大部分头发后,一位同事首先说明了对我来说应该很明显的事情:

sc.sparkUser

返回 Zeppelin 中的模拟用户 ID。

【讨论】:

以上是关于Zeppelin, Livy, 我可以得到 proxyUser的主要内容,如果未能解决你的问题,请参考以下文章

在 Apache Livy Interpreter for Zeppelin 中访问 zeppelin 上下文的问题

在 Zeppelin 上使用 Apache Livy 解释器时,Matplotlib 不绘图

zeppelin 动态加载 jars

pyspark 数据框使用 show() 出错

如何让独立服务 Zeppelin 看到 Hive?

Apache Spark和Livy集群