JupyterHub - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

JupyterHub

Jupyter notebook 是一个开源 Web 应用程序,可用于创建和共享包含实时代码、公式、可视化效果和叙述性文本的文档。JupyterHub 允许托管单用户 Jupyter notebook 服务器的多个实例。使用 JupyterHub、Amazon EMR 创建集群时,将在集群的主节点上创建一个 Docker 容器。JupyterHub、Jupyter 需要的所有组件和 Sparkmagic 将在此容器内运行。

Sparkmagic 是内核库,内核允许 Jupyter notebook 通过 Apache Livy(适用于 Spark 的 REST 服务器)与在 Amazon EMR 上运行的 Apache Spark 通信。使用 JupyterHub 创建集群时,将自动安装 Spark 和 Apache Livy。适用于 Jupyter 的默认 Python 3 内核与可与 Sparkmagic 一起使用的 PySpark 3、PySpark 和 Spark 内核一起提供。通过使用 Python 和 Scala,可以使用这些内核运行临时 Spark 代码和交互式 SQL 查询。可以在 Docker 容器内手动安装其它内核。有关更多信息,请参阅安装其它内核和库

下图描述了 JupyterHub on Amazon EMR 的组件以及笔记本用户和管理员对应的身份验证方法。有关更多信息,请参阅添加 Jupyter notebook 用户和管理员

下表列出了 Amazon EMR 6.x 系列的最新发行版附带的 JupyterHub 版本,以及 Amazon EMR 随 JupyterHub 一起安装的组件。

有关此发行版中随 JupyterHub 安装的组件版本,请参阅 Release 6.14.0 Component Versions

emr-6.14.0 的 JupyterHub 版本信息
Amazon EMR 发行版标签 JupyterHub 版本 随 JupyterHub 安装的组件

emr-6.14.0

JupyterHub 1.5.0

aws-sagemaker-spark-sdk, emrfs, emr-goodies, emr-ddb, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-kms-server, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hudi, hudi-spark, r, spark-client, spark-history-server, spark-on-yarn, spark-yarn-slave, livy-server, jupyterhub

下表列出了 Amazon EMR 5.x 系列的最新发行版附带的 JupyterHub 版本,以及 Amazon EMR 随 JupyterHub 一起安装的组件。

有关此发行版中随 JupyterHub 安装的组件版本,请参阅 Release 6.14.0 Component Versions

emr-5.36.1 的 JupyterHub 版本信息
Amazon EMR 发行版标签 JupyterHub 版本 随 JupyterHub 安装的组件

emr-5.36.1

JupyterHub 1.4.1

aws-sagemaker-spark-sdk, emrfs, emr-goodies, emr-ddb, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-kms-server, hadoop-yarn-nodemanager, hadoop-yarn-resourcemanager, hadoop-yarn-timeline-server, hudi, hudi-spark, r, spark-client, spark-history-server, spark-on-yarn, spark-yarn-slave, livy-server, jupyterhub

JupyterHub on Amazon EMR 附带的 Python 3 内核为 3.6.4。

在 Amazon EMR 版本和 Amazon EC2 AMI 版本之间,jupyterhub 容器内安装的库可能不同。

使用 conda 列出已安装的库
  • 在主节点命令行上运行以下命令:

    sudo docker exec jupyterhub bash -c "conda list"
使用 pip 列出已安装的库
  • 在主节点命令行上运行以下命令:

    sudo docker exec jupyterhub bash -c "pip freeze"