本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amazon S3 中配置 Notebook 的持久性
您可以在 Amazon EMR 中配置 JupyterHub 集群,以便用户保存的 Notebook 保存在 Amazon S3(集群实例上的短暂存储之外)中。 EC2
在创建集群时使用 jupyter-s3-conf
配置分类指定 Amazon S3 持久性。有关更多信息,请参阅配置应用程序。
除了使用 s3.persistence.enabled
属性启用 Amazon S3 持久性之外,还请使用 s3.persistence.bucket
属性在保存 Notebook 的 Amazon S3 中指定存储桶。每个用户的 Notebook 将保存到指定存储桶中的 jupyter/
文件夹。该存储桶必须已存在于 Amazon S3 中,并且您在创建集群时指定的 EC2 实例配置文件的角色必须对此存储桶具有权限(默认情况下,此角色为jupyterhub-user-name
EMR_EC2_DefaultRole
)。有关更多信息,请参阅为服务的 Amazon EMR 权限配置 IAM 角色。 Amazon
当您使用相同的配置分类属性启动新集群时,用户可以打开内容来自已保存位置的 Notebook。
请注意,当您启用了 Amazon S3 后,如果将文件作为模块导入到 Notebook 中,这会导致文件上载到 Amazon S3。导入文件而不启用 Amazon S3 持久性时,这些文件会上载到 Amazon S3 持久 JupyterHub 性中。
以下示例启用 Amazon S3 持久性。用户保存的 Notebook 保存在每个用户的 s3://MyJupyterBackups/jupyter/
文件夹中,其中 jupyterhub-user-name
是一个用户名(如 jupyterhub-user-name
diego
)。
[ { "Classification": "jupyter-s3-conf", "Properties": { "s3.persistence.enabled": "true", "s3.persistence.bucket": "MyJupyterBackups" } } ]