在 Amazon S3 中設定筆記本的持久性 - Amazon EMR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 Amazon S3 中設定筆記本的持久性

您可以在 Amazon EMR 中設定 JupyterHub 叢集,讓使用者儲存的筆記本保存在 Amazon S3 中,位於叢集 EC2 執行個體上的暫時儲存之外。

當您建立叢集時,可以使用 jupyter-s3-conf 組態分類來指定 Amazon S3 持久性。如需詳細資訊,請參閱 設定應用程式

除了使用 s3.persistence.enabled 屬性來啟用 Amazon S3 持久性以外,您也可以利用 s3.persistence.bucket 屬性,來指定筆記本儲存所在 Amazon S3 中的儲存貯體。每個使用者的筆記本,會儲存到指定儲存貯體中的 jupyter/jupyterhub-user-name 資料夾。該儲存貯體必須已存在於 Amazon S3 中,而且您在建立叢集時,所指定的 EC2 執行個體設定檔角色,必須具有對該儲存貯體的許可 (此角色預設為 EMR_EC2_DefaultRole)。如需詳細資訊,請參閱為 AWS 服務的 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" } } ]