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