Configurazione della persistenza per i notebook in Amazon S3 - Amazon EMR

Configurazione della persistenza per i notebook in Amazon S3

Puoi configurare un cluster JupyterHub in Amazon EMR in modo che i notebook salvati da un utente persistano in Amazon S3, al di fuori dell'archiviazione temporanea sulle istanze EC2 del cluster.

La persistenza di Amazon S3 viene specificata utilizzando la classificazione di configurazione jupyter-s3-conf al momento della creazione di un cluster. Per ulteriori informazioni, consulta Configurazione delle applicazioni.

Oltre ad abilitare la persistenza di Amazon S3 utilizzando la proprietà s3.persistence.enabled, è possibile specificare un bucket in Amazon S3 in cui i notebook vengono salvati utilizzando la proprietà s3.persistence.bucket. I notebook per ciascun utente vengono salvati in una cartella jupyter/jupyterhub-user-name nel bucket specificato. Il bucket deve esistere già in Amazon S3 e il ruolo per il profilo dell'istanza EC2 specificato al momento della creazione del cluster deve disporre delle autorizzazioni per il bucket (per impostazione predefinita, il ruolo è EMR_EC2_DefaultRole). Per ulteriori informazioni, consulta Configurazione di ruoli IAM per le autorizzazioni Amazon EMR ai servizi AWS.

Quando avvii un nuovo cluster utilizzando le stesse proprietà di classificazione di configurazione, gli utenti possono aprire i notebook con i contenuti dalla posizione salvata.

Tieni presente che l'importazione del file sotto forma di moduli in un notebook quando Amazon S3 è abilitato comporterà il caricamento dei file su Amazon S3. Quando importi file senza abilitare la persistenza di Amazon S3, questi vengono caricati nel container JupyterHub.

L'esempio seguente abilita la persistenza di Amazon S3. I notebook salvati dagli utenti vengono salvati nella cartella s3://MyJupyterBackups/jupyter/jupyterhub-user-name per ciascun utente, dove jupyterhub-user-name è un nome utente, ad esempio diego.

[ { "Classification": "jupyter-s3-conf", "Properties": { "s3.persistence.enabled": "true", "s3.persistence.bucket": "MyJupyterBackups" } } ]