Containerizing di un notebook - AWS IoT Analytics

AWS IoT Analytics non è più disponibile per i nuovi clienti. I clienti esistenti di AWS IoT Analytics possono continuare a utilizzare il servizio normalmente. Ulteriori informazioni

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Containerizing di un notebook

Questa sezione include informazioni su come creare un contenitore Docker utilizzando un notebook Jupyter. Il riutilizzo di notebook creati da terze parti rappresenta un rischio per la sicurezza: i container inclusi possono eseguire codice arbitrario con le tue autorizzazioni utente. Inoltre, il codice HTML generato dal notebook può essere visualizzato nelAWS IoT Analyticsconsole, che fornisce un potenziale vettore di attacco sul computer che visualizza l'HTML. Prima di utilizzare un notebook di terze parti, assicurati che l'autore sia attendibile.

Una delle opzioni per eseguire funzioni di analisi avanzata consiste nell'utilizzare un notebook Jupyter. Jupyter Notebook fornisce potenti strumenti di data science in grado di eseguire l'apprendimento automatico e una serie di analisi statistiche. Per ulteriori informazioni, consulta la paginaModelli di notebook. (Nota che al momento non supportiamo la containerizzazione all'interno JupyterLab.) È possibile impacchettare il notebook Jupyter e le librerie in un contenitore che viene eseguito periodicamente su un nuovo batch di dati man mano che viene ricevuto daAWS IoT Analyticsdurante una finestra temporale delta che definisci. È possibile pianificare un processo di analisi che utilizza il contenitore e i nuovi dati segmentati acquisiti entro la finestra temporale specificata, quindi memorizza l'output del lavoro per analisi pianificate future.

Se hai creato un SageMaker Istanza che utilizza ilAWS IoT Analyticsconsole dopo il 23 agosto 2018, quindi l'installazione dell'estensione di containerizzazione è stata eseguita automaticamentee puoi iniziare a creare un'immagine containerizzata. In caso contrario, seguire le fasi elencate in questa sezione per abilitare la containerizzazione del notebook sul SageMaker istanza. In quanto segue, modifichi il tuo SageMaker Ruolo di esecuzione per consentire di caricare l'immagine del contenitore su Amazon EC2 e installare l'estensione per la containerizzazione.

Abilita la containerizzazione delle istanze di notebook non create tramiteAWS IoT Analyticsplancia

Ti consigliamo di crearne una nuova SageMaker istanza tramite il pluginAWS IoT Analyticsconsole invece di seguire questi passaggi. Le nuove istanze supportano automaticamente la containerizzazione.

Se riavvii il SageMaker dopo aver abilitato la containerizzazione come mostrato qui, non sarà necessario aggiungere nuovamente i ruoli e le policy IAM, ma è necessario reinstallare l'estensione, come mostrato nel passaggio finale.

  1. Per concedere all'istanza del tuo notebook l'accesso ad Amazon ECS, seleziona il tuo SageMaker istanza sul SageMaker Pagina:

    Containerize di un notebook inAWS IoT Analytics.
  2. SottoRuolo IAM e ARN, scegli il SageMaker Ruolo di esecuzione.

    Containerize di un notebook inAWS IoT Analytics.
  3. Scegli Collega policy, quindi definisci e collega la policy mostrata in Autorizzazioni. Se il fileAmazonSageMakerFullAccessla policy non è già allegata, allegala pure.

    Containerize di un notebook inAWS IoT Analytics.

È inoltre necessario scaricare il codice di containerizzazione da Amazon S3 e installarlo sull'istanza del notebook. Il primo passaggio consiste nell'accedere al SageMaker terminale dell'istanza.

  1. All'interno di Jupyter, sceglinovità.

    Containerize di un notebook inAWS IoT Analytics.
  2. Dal menu visualizzato, scegliereTerminale.

    Containerize di un notebook inAWS IoT Analytics.
  3. All'interno del terminale immetti i comandi seguenti per scaricare il codice, decomprimerlo e installarlo. Nota che questi comandi uccidono tutti i processi eseguiti dai tuoi notebook su questo SageMaker istanza.

    Containerize di un notebook inAWS IoT Analytics.
    cd /tmp aws s3 cp s3://iotanalytics-notebook-containers/iota_notebook_containers.zip /tmp unzip iota_notebook_containers.zip cd iota_notebook_containers chmod u+x install.sh ./install.sh

    Attendi uno o due minuti per la convalida e l'installazione dell'estensione.

Aggiorna l'estensione per la containerizzazione dei notebook

Se hai creato il tuo SageMaker Istanza tramite il pluginAWS IoT Analyticsconsole dopo il 23 agosto 2018, quindi l'estensione per la containerizzazione è stata installata automaticamente. Puoi aggiornare l'estensione riavviando l'istanza da SageMaker Console. Se hai installato l'estensione manualmente, puoi aggiornarla eseguendo nuovamente i comandi del terminale elencati in Abilita la containerizzazione delle istanze del notebook non create tramiteAWS IoT AnalyticsConsole.

Creazione di un'immagine containerizzata

In questa sezione mostreremo i passaggi necessari per containerizzare un notebook. Per iniziare, passa al notebook Jupyter per creare un notebook con un kernel containerizzato.

  1. Nel notebook Jupyter scegli Nuovo, quindi scegli il tipo di kernel desiderato dall'elenco a discesa. (Il tipo di kernel dovrebbe iniziare con «Containerized» e terminare con qualsiasi kernel che avresti selezionato altrimenti. Ad esempio, se desideri solo un semplice ambiente Python 3.0 come «conda_python3", scegli «Containerized conda_python3").

    Aggiorna l'estensione di containerizzazione del notebook inAWS IoT Analytics.
  2. Dopo aver completato il lavoro sul notebook e aver desiderato containerizzarlo, scegliContainerizzare.

    Aggiorna l'estensione di containerizzazione del notebook inAWS IoT Analytics.
  3. Inserisci un nome per il notebook containerizzato. Puoi anche inserire una descrizione opzionale.

    Aggiorna l'estensione di containerizzazione del notebook inAWS IoT Analytics.
  4. Specifica le variabili di input (parametri) con cui richiamare il notebook. Puoi selezionare le variabili di input rilevate automaticamente dal tuo notebook o definire variabili personalizzate. Tieni presente che le variabili di input vengono rilevate solo se è stato eseguito precedentemente il notebook. Scegli un tipo per ogni variabile di input. Puoi anche inserire una descrizione opzionale della variabile di input.

    Aggiorna l'estensione di containerizzazione del notebook inAWS IoT Analytics.
  5. Scegliere il repository Amazon ECR in cui caricare l'immagine creata dal notebook.

    Aggiorna l'estensione di containerizzazione del notebook inAWS IoT Analytics.
  6. ScegliContainerizzareper iniziare il processo.

    Ti viene presentata una panoramica che riassume il tuo contributo. Nota che dopo aver avviato il processo non è possibile annullarlo. Il processo potrebbe durare fino a un'ora.

    Aggiorna l'estensione di containerizzazione del notebook inAWS IoT Analytics.
  7. La pagina successiva mostra lo stato di avanzamento.

    Aggiorna l'estensione di containerizzazione del notebook inAWS IoT Analytics.
  8. In caso di chiusura accidentale del browser, è possibile monitorare lo stato del processo di containerizzazione dalNotebooksezione delAWS IoT AnalyticsConsole.

  9. Una volta completato il processo, l'immagine containerizzata viene archiviata su Amazon ECR pronta per l'uso.

    Aggiorna l'estensione di containerizzazione del notebook inAWS IoT Analytics.