Conteinerização de caderno - AWS IoT Analytics

AWS IoT Analytics não está mais disponível para novos clientes. Os clientes existentes do AWS IoT Analytics podem continuar usando o serviço normalmente. Saiba mais

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Conteinerização de caderno

Esta seção inclui informações sobre como criar um contêiner do Docker usando um caderno Jupyter. Há um risco de segurança se você usar blocos de anotações criados por terceiros: os contêineres incluídos poderão executar código arbitrário com as permissões de usuário. Além disso, o HTML gerado pelo notebook pode ser exibido no AWS IoT Analytics console, fornecendo um potencial vetor de ataque no computador que exibe o HTML. Certifique-se de confiar no autor de qualquer bloco de anotações de terceiros antes de usá-lo.

Uma opção para executar funções analíticas avançadas é usar um Notebook Jupyter. O caderno Jupyter fornece poderosas ferramentas de ciência de dados que podem realizar machine learning e uma ampla variedade de análises estatísticas. Para obter mais informações, consulte Modelos de caderno. (Observe que atualmente não oferecemos suporte à conteinerização interna JupyterLab.) Você pode empacotar o Jupyter Notebook e as bibliotecas em um contêiner que é executado periodicamente em um novo lote de dados à medida que são recebidos AWS IoT Analytics durante uma janela de tempo delta definida por você. Você pode programar um trabalho de análise que usa o contêiner e os novos dados segmentados capturados na janela de tempo especificada e armazenar a saída do trabalho para futuras análises programadas.

Se você criou uma instância de SageMaker IA usando o AWS IoT Analytics console depois de 23 de agosto de 2018, a instalação da extensão de conteinerização foi feita automaticamente e você pode começar a criar uma imagem em contêiner. Caso contrário, siga as etapas listadas nesta seção para ativar a conteinerização do notebook na sua instância de SageMaker IA. A seguir, você modifica sua função de execução de SageMaker IA para permitir que você faça o upload da imagem do contêiner para a Amazon EC2 e instale a extensão de conteinerização.

Habilite a conteinerização de instâncias de notebook não criadas por meio do console AWS IoT Analytics

Recomendamos que você crie uma nova instância de SageMaker IA por meio do AWS IoT Analytics console em vez de seguir essas etapas. As novas instâncias oferecem suporte à conteinerização automaticamente.

Se você reiniciar sua instância de SageMaker IA depois de ativar a conteinerização, conforme mostrado aqui, não precisará adicionar novamente as funções e políticas do IAM, mas deverá reinstalar a extensão, conforme mostrado na etapa final.

  1. Para conceder acesso à sua instância de notebook ao Amazon ECS, selecione sua instância de SageMaker IA na página de SageMaker IA:

    Coloque um notebook em um contêiner. AWS IoT Analytics
  2. Em ARN da função do IAM, escolha a função de execução da SageMaker IA.

    Coloque um notebook em um contêiner. AWS IoT Analytics
  3. Escolha Attach Policy (Anexar política) e, em seguida, defina e anexe a política mostrada em Permissões. Se a política AmazonSageMakerFullAccess ainda não foi anexada, anexe-a.

    Coloque um notebook em um contêiner. AWS IoT Analytics

Você também deve baixar o código de conteinerização do Amazon S3 e instalá-lo na instância do seu notebook. A primeira etapa é acessar o terminal SageMaker da instância de IA.

  1. Dentro do Jupyter, escolha Novo:

    Coloque um notebook em um contêiner. AWS IoT Analytics
  2. No menu exibido, escolha Terminal.

    Coloque um notebook em um contêiner. AWS IoT Analytics
  3. No terminal, digite os seguintes comandos para fazer download do código, descompactá-lo e instalá-lo. Observe que esses comandos eliminam todos os processos executados por seus notebooks nessa instância de SageMaker IA.

    Coloque um notebook em um contêiner. AWS 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

    Aguarde um ou dois minutos para que a extensão seja validada e instalada.

Atualizar a extensão de conteinerização do notebook

Se você criou sua instância de SageMaker IA por meio do AWS IoT Analytics console depois de 23 de agosto de 2018, a extensão de conteinerização foi instalada automaticamente. Você pode atualizar a extensão reiniciando sua instância no SageMaker AI Console. Se você instalou a extensão manualmente, poderá atualizá-la executando novamente os comandos do terminal listados em Habilitar a conteinerização de instâncias de notebook não criadas via console. AWS IoT Analytics

Criar uma imagem conteinerizada

Nesta seção, mostramos as etapas necessárias para conteinerizar um notebook. Para começar, acesse o notebook Jupyter para criar um notebook com um kernel conteinerizado.

  1. No notebook Jupyter, escolha New (Novo) e, em seguida, escolha o tipo de kernel desejado na lista suspensa. (O tipo de kernel deve começar com “Containerized” e terminar com qualquer kernel que você teria selecionado de outra forma. Por exemplo, se você quiser apenas um ambiente Python 3.0 simples, como “conda_python3", escolha “Containerized conda_python3”).

    Atualizar a extensão de conteinerização do caderno em AWS IoT Analytics.
  2. Depois de concluir o trabalho no caderno e desejar conteinerizá-lo, escolha o botão Conteinerizar.

    Atualizar a extensão de conteinerização do caderno em AWS IoT Analytics.
  3. Digite um nome para o notebook conteinerizado. Você também pode inserir uma descrição opcional.

    Atualizar a extensão de conteinerização do caderno em AWS IoT Analytics.
  4. Especifique as Input Variables (Variáveis de entrada) (parâmetros) com as quais o notebook deve ser invocado. Você pode selecionar as variáveis de entrada que são automaticamente detectadas pelo notebook ou definir variáveis personalizadas. (Observe que as variáveis de entrada só serão detectadas se você já tiver executado o notebook anteriormente.) Para cada variável de entrada, escolha um tipo. Você também pode inserir uma descrição opcional da variável de entrada:

    Atualizar a extensão de conteinerização do caderno em AWS IoT Analytics.
  5. Escolha o repositório do Amazon ECR onde a imagem criada do caderno deve ser carregada.

    Atualizar a extensão de conteinerização do caderno em AWS IoT Analytics.
  6. Escolha Conteinerizar para começar o processo.

    Será apresentada uma visão geral resumindo sua entrada. Observe que, depois de iniciar o processo, não é possível cancelá-lo. O processo pode durar até uma hora.

    Atualizar a extensão de conteinerização do caderno em AWS IoT Analytics.
  7. A próxima página mostra o progresso.

    Atualizar a extensão de conteinerização do caderno em AWS IoT Analytics.
  8. Se você fechar o navegador acidentalmente, poderá monitorar o status do processo de conteinerização na seção Cadernos do console do AWS IoT Analytics .

  9. Depois que o processo for concluído, a imagem conteinerizada é armazenada no Amazon ECR pronta para uso.

    Atualizar a extensão de conteinerização do caderno em AWS IoT Analytics.