如何更改Azure Databricks中Spark用户的运行作业?

时间:2019-09-17 03:00:24

标签: azure apache-spark pyspark databricks azure-databricks

我在Azure Databricks 5.5上使用Spark。我通过作业,笔记本和Spark提交通过Databricks工作区UI提交Spark作业。作业已成功提交,Databricks的新集群已产生或正在使用现有集群。但是,默认情况下,在执行程序节点上运行作业的用户是 root 。是否可以更改在Azure Databricks上运行作业的用户(这本身不允许SSH访问)?

通常,当我在具有Shell访问权限的群集上使用spark-submit CLI时;我使用sudo:sudo -u exampleuser spark-submit...来更改用户。在此示例中,用户“ exampleuser”出现在集群的所有节点上。 因此,我想知道是否可以更改在Azure Databricks群集中运行Spark作业的用户。

2 个答案:

答案 0 :(得分:1)

与Azure Databricks团队讨论后,更改运行Spark作业的用户的正确方法是在创建群集期间设置环境变量 HADOOP_USER_NAME 。 这会将运行Spark Job的有效用户从root更改为$ HADOOP_USER_NAME用户

答案 1 :(得分:0)

默认情况下,除非管理员启用了作业访问控制,否则所有用户都可以创建和修改作业。使用作业访问控制,个人权限决定用户的能力。本主题描述个人权限以及如何启用和配置作业访问控制。

  • 工作权限

作业共有五个权限级别:无权限可以查看可以管理运行是所有者 >和可以管理。可以管理权限保留给管理员。该表列出了每种权限的功能。

enter image description here

  • 启用作业访问控制

转到“管理控制台” =>选择“访问控制选项卡” =>单击“集群和Jos访问控制”旁边的“启用”按钮=>单击“确认”以确认更改。

enter image description here

  • 配置工作权限

注意:您必须是管理员或具有“是所有者”权限才​​能配置作业提交。

首先,选择要更改用户的作业=>单击“高级” =>单击权限旁边的“编辑”链接。 =>在弹出的对话框中,通过用户名旁边的下拉菜单分配作业权限。

enter image description here

希望这会有所帮助。


如果这回答了您的查询,请同时单击“标记为答案”和“上投票”。而且,如果您还有其他疑问,请告诉我们。