首页 > 解决方案 > 如何在 jupyterhub 上为每个用户隔离 spark 会话?

问题描述

我有一个连接到我的 JupyterHub 安装的 AD 插件,以便用户将通过 AD 连接器在 JupyterHub 上进行身份验证。

问题是,如果不同的用户通过 JupyterHub 上的 Jupyter Notebook 将他们的 Spark 作业提交到共享的底层 Spark 引擎,是否有一种方法可以让每个用户拥有自己的独立 Spark 会话而不是共享会话?

首先十分感谢!

标签: apache-sparkjupyterjupyterhub

解决方案


通过使用这种部署模式:

  • 用户将连接到绑定到 AD的共享JupyterHub
  • 如果他们通过身份验证,将生成一个新的Jupyter Notebook(服务器)
  • 然后在他们的 Jupyter Notebook 中,他们将根据您的部署在本地或集群模式下使用Spark 。在这两种情况下,驱动程序都专用于它们的使用(不共享)。

在这个典型的部署中,除了 Spark 集群(如果有的话)之外,没有任何东西是共享的。每个用户将能够获得和管理一个新的SparkSession.

请参阅jupyterhub-deploy-docker 中的此图。

在此处输入图像描述


推荐阅读