Amazon EMR
Amazon EMR 版本指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

JupyterHub

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

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

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

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

有关随此版本中的 JupyterHub 一起安装的组件的版本,请参阅发行版 5.25.0 组件版本

emr-5.25.0 的 JupyterHub 版本信息

Amazon EMR 发行版标签 JupyterHub 版本 随 JupyterHub 安装的组件

emr-5.25.0

JupyterHub 0.9.6

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、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"