

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# JupyterHub
<a name="emr-jupyterhub"></a>

[Jupyter Notebook](https://jupyter.org/) 是一款开源 Web 应用程序，可用于创建和共享包含实时代码、方程式、可视化效果和叙述文本的文档。 [JupyterHub](https://jupyterhub.readthedocs.io/en/latest/)允许您托管单用户 Jupyter 笔记本服务器的多个实例。当您使用创建集群时 JupyterHub，Amazon EMR 会在集群的主节点上创建一个 Docker 容器。 JupyterHub、Jupyter 和 [Sparkmagic](https://github.com/jupyter-incubator/sparkmagic/blob/master/README.md) 所需的所有组件都在容器内运行。

Sparkmagic 是内核库，内核允许 Jupyter notebook 通过 [Apache Livy](emr-livy.md)（适用于 Spark 的 REST 服务器）与在 Amazon EMR 上运行的 [Apache Spark](https://www.amazonaws.cn/big-data/what-is-spark/) 通信。使用 JupyterHub 创建集群时，将自动安装 Spark 和 Apache Livy。Jupyter 的默认 Python 3 内核与 Sparkmagic 提供的 PySpark 3 PySpark、和 Spark 内核一起可用。通过使用 Python 和 Scala，可以使用这些内核运行临时 Spark 代码和交互式 SQL 查询。可以在 Docker 容器内手动安装其它内核。有关更多信息，请参阅 [安装其它内核和库](emr-jupyterhub-install-kernels-libs.md)。

下图描述了 Amazon EMR JupyterHub 上的组件以及适用于笔记本用户和管理员的相应身份验证方法。有关更多信息，请参阅 [添加 Jupyter notebook 用户和管理员](emr-jupyterhub-user-access.md)。

![架构图显示了通过 PAM 或 LDAP 对 JupyterHub 主实例进行 SSH 和命令行访问。](http://docs.amazonaws.cn/emr/latest/ReleaseGuide/images/jupyter-arch.png)


下表列出了最新版本的 Amazon EMR 7.x 系列中 JupyterHub 包含的版本，以及 Amazon EMR 随之安装的组件。 JupyterHub

有关此版本 JupyterHub 中安装的组件的版本，请参阅 [7.13.0 版组件版本](emr-7130-release.md)。


**JupyterHub emr-7.13.0 的版本信息**  

| Amazon EMR 发行版标签 | JupyterHub 版本 | 安装在一起的组件 JupyterHub | 
| --- | --- | --- | 
| emr-7.13.0 | JupyterHub 1.5.0 | emrfs, emr-goodies, emr-ddb, hadoop-client, hadoop-hdfs-datanode, hadoop-hdfs-library, hadoop-hdfs-namenode, hadoop-hdfs-zkfc, 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 6.x 系列中 JupyterHub 包含的版本以及与之一起安装的 Amazon EMR 的组件。 JupyterHub

有关此版本 JupyterHub 中安装的组件的版本，请参阅 [6.15.0 版组件版本](emr-6150-release.md)。


**JupyterHub emr-6.15.0 的版本信息**  

| Amazon EMR 发行版标签 | JupyterHub 版本 | 安装在一起的组件 JupyterHub | 
| --- | --- | --- | 
| emr-6.15.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 中安装的组件的版本，请参阅 [5.36.2 版组件版本](emr-5362-release.md)。


**JupyterHub emr-5.36.2 的版本信息**  

| Amazon EMR 发行版标签 | JupyterHub 版本 | 安装在一起的组件 JupyterHub | 
| --- | --- | --- | 
| emr-5.36.2 | 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 | 

亚马逊 EMR 中包含的 Python 3 内核是 3.6.4。 JupyterHub 

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

**使用 `conda` 列出已安装的库**
+ 在主节点命令行上运行以下命令：

  ```
  sudo docker exec jupyterhub bash -c "conda list"
  ```

**使用 `pip` 列出已安装的库**
+ 在主节点命令行上运行以下命令：

  ```
  sudo docker exec jupyterhub bash -c "pip freeze"
  ```

**Topics**
+ [使用创建集群 JupyterHub](emr-jupyterhub-launch.md)
+ [JupyterHub 在 Amazon EMR 上使用时的注意事项](emr-jupyterhub-considerations.md)
+ [正在配置 JupyterHub](emr-jupyterhub-configure.md)
+ [在 Amazon S3 中配置 Notebook 的持久性](emr-jupyterhub-s3.md)
+ [连接到主节点和 Notebook 服务器](emr-jupyterhub-connect.md)
+ [JupyterHub 配置和管理](emr-jupyterhub-administer.md)
+ [添加 Jupyter notebook 用户和管理员](emr-jupyterhub-user-access.md)
+ [安装其它内核和库](emr-jupyterhub-install-kernels-libs.md)
+ [JupyterHub 发布历史](JupyterHub-release-history.md)