在本地模式下限制 Spark 作业

Restrict Spark job in local mode

有什么方法可以限制访问权限以将spark部署模式作为本地模式执行spark-submit。如果我允许用​​户在本地模式下执行作业,我的 yarn 集群将变得未充分利用。

我已配置使用 yarn 作为集群管理器来安排 spark 作业。 我检查了 spark 配置,但没有找到任何仅允许特定部署模式的参数。用户可以在向集群提交 spark 作业时覆盖默认部署模式。

您可以通过在 conf/spark-defaults.conf 文件中将 spark.master 键设置为 yarn 来激励和促进 YARN 的使用。如果您的配置已准备好指向正确的主机,默认情况下用户将在 YARN 上部署他们的作业。

我不知道有什么方法可以完全禁止您的用户使用 master,尤其是当它在他们的控制之下时(local 就是这种情况)。如果您控制 Spark 安装,您可以做的是修改现有的 spark-shell/spark-submit 启动脚本以检测用户是否试图明确使用 local 作为主控并阻止这种情况即将发生。或者,您也可以拥有自己的脚本来检查并防止打开任何 local 会话,然后正常运行 spark-shell/spark-submit