Como o EC2 Image Builder funciona - EC2 Image Builder

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á.

Como o EC2 Image Builder funciona

Quando você usa o assistente do console de pipeline do EC2 Image Builder para criar uma imagem personalizada, um assistente o orienta nas etapas a seguir.

  1. Especifique os detalhes do pipeline — insira informações sobre seu pipeline, como nome, descrição, tags e um cronograma para executar compilações automatizadas. Se preferir, você pode escolher construções manuais.

  2. Escolha a fórmula — Escolha entre criar uma AMI ou criar uma imagem de contêiner. Para os dois tipos de imagens de saída, você insere um nome e uma versão para sua fórmula, seleciona uma imagem base e escolhe os componentes a serem adicionados para criação e teste. Você também pode escolher o controle de versão automático para garantir que sempre use a versão mais recente disponível do sistema operacional (SO) para sua imagem base. Além disso, as fórmulas de contêiner definem Dockerfiles e o repositório Amazon ECR de destino para sua imagem de contêiner Docker de saída.

    nota

    Os componentes são os blocos de construção que são consumidos por uma fórmula de imagem ou uma fórmula de recipiente. Por exemplo, pacotes para instalação, etapas de fortalecimento da segurança e testes. A imagem base e os componentes selecionados formam uma fórmula de imagem.

  3. Definir configuração de infraestrutura – O Image Builder inicia instâncias do EC2 em sua conta para personalizar imagens e executar testes de validação. As configurações da infraestrutura especificam os detalhes da infraestrutura para as instâncias que serão executadas na sua Conta da AWS durante o processo de criação.

  4. Defina as configurações de distribuição — Escolha as AWS regiões para as quais distribuir sua imagem após a conclusão da compilação e a aprovação em todos os testes. O pipeline distribui automaticamente sua imagem para a região em que executa a compilação, e você pode adicionar distribuição de imagens para outras regiões.

As imagens que você cria a partir da sua imagem base personalizada estão no seu Conta da AWS. Você pode configurar seu pipeline de imagens para produzir versões atualizadas e corrigidas de sua imagem inserindo um cronograma de construção. Quando a compilação for concluída, você poderá receber uma notificação por meio do Amazon Simple Notification Service (SNS). Além de produzir uma imagem final, o assistente do console do Image Builder gera uma fórmula que pode ser usada com sistemas de controle de versão existentes e pipelines de integração contínua/implantação contínua (CI/CD) para automação repetível. Você pode compartilhar e criar novas versões da sua fórmula.

Elementos da AMI

Uma imagem de máquina da Amazon (AMI) é uma imagem de máquina virtual (VM) pré-configurada que contém o sistema operacional e o software para implantar instâncias do EC2.

Uma AMI inclui os seguintes elementos:

  • Um modelo para o volume raiz da VM. Quando você executa uma VM do Amazon EC2, o volume do dispositivo raiz contém a imagem usada para iniciar a instância. Quando o armazenamento de instâncias é usado, o dispositivo raiz é um volume de armazenamento de instâncias criado em um modelo no Amazon S3. Para mais informações, consulte Volume do dispositivo raiz do Amazon EC2.

  • Quando o Amazon EBS é usado, o dispositivo raiz é um volume do EBS criado em um snapshot do EBS.

  • Permissões de inicialização que determinam Contas da AWS quem pode iniciar VMs com a AMI.

  • Dados de mapeamento de dispositivos de blocos que especifica os volumes a serem anexados à instância quando ela for executada.

  • Um identificador de recurso exclusivo para cada região, para cada conta.

  • Cargas de metadados, como tags, e propriedades, como região, sistema operacional, arquitetura, tipo de dispositivo raiz, provedor, permissões de inicialização, armazenamento para o dispositivo raiz e status de assinatura.

  • Uma assinatura AMI para imagens do Windows para proteção contra adulteração não autorizada. Para obter mais informações, consulte Documentos de identidade da instância.

Cotas padrão

Para ver as cotas padrão do Image Builder, consulte Endpoints and Quotas do Image Builder.

AWS Regiões e endpoints

Para ver os endpoints de serviço do Image Builder, consulte Endpoints e cotas do Image Builder.

Gerenciamento de componentes

O EC2 Image Builder usa um AWS Task Orchestrator and Executor aplicativo de gerenciamento de componentes AWSTOE() que ajuda você a orquestrar fluxos de trabalho complexos, modificar configurações do sistema e testar seus sistemas com componentes de script baseados em YAML. Por ser AWSTOE um aplicativo independente, ele não requer nenhuma configuração adicional. Pode ser executado em qualquer infraestrutura de nuvem e no local. Para começar a usar AWSTOE como um aplicativo independente, consulteComece com AWSTOE.

O Image Builder usa AWSTOE para realizar todas as atividades na instância. Isso inclui criar e validar sua imagem antes de tirar um snapshot e testar o snapshot para garantir que ele funcione conforme o esperado antes de criar a imagem final. Para obter mais informações sobre como o Image Builder usa AWSTOE para gerenciar seus componentes, consulteGerencie componentes com o Image Builder. Para obter mais informações sobre a criação de componentes com AWSTOE, consulte AWS Task Orchestrator and Executor gerenciador de componentes.

Teste de imagem

Você pode usar componentes de AWSTOE teste para validar sua imagem e garantir que ela funcione conforme o esperado, antes de criar a imagem final.

Geralmente, cada componente de teste consiste em um documento YAML que contém um script de teste, um binário de teste e metadados de teste. O script de teste contém os comandos de orquestração para iniciar o binário de teste, que pode ser escrito em qualquer linguagem compatível com o sistema operacional. Os códigos de status de saída indicam o resultado do teste. Os metadados de teste descrevem o teste e seu comportamento; por exemplo, o nome, a descrição, os caminhos para testar o binário e a duração esperada.

Recursos criados

Quando você cria um pipeline, nenhum recurso externo ao Image Builder é criado, a menos que o seguinte seja verdadeiro:

  • Quando uma imagem é criada por meio do cronograma do pipeline

  • Quando você escolhe Executar pipeline no menu Ações no console do Image Builder

  • Quando você executa um desses comandos a partir da API ou AWS CLI: StartImagePipelineExecution ou CreateImage

Os seguintes recursos são criados durante o processo de criação da imagem:

Pipelines de imagens da AMI
  • Instância do EC2 (temporária)

  • Systems Manager Inventory Association (por meio do Systems Manager State Manager, se EnhancedImageMetadata estiver habilitado) na instância EC2

  • AMI do Amazon EC2

  • O snapshot do Amazon EBS associado à AMI do Amazon EC2

Pipelines de imagens de contêiner
  • Contêiner Docker em execução em uma instância EC2 (temporário)

  • Systems Manager Inventory Association (por meio do Systems Manager State Manager, se EnhancedImageMetadata estiver habilitado) na instância EC2

  • Imagem do contêiner do docker

  • Dockerfile

Depois que a imagem for criada, todos os recursos temporários serão excluídos.

Distribuição

O EC2 Image Builder pode distribuir AMIs ou imagens de contêiner para AWS qualquer região. A imagem é copiada para cada região especificada na conta usada para criar a imagem.

Para imagens de saída da AMI, você pode definir as permissões de execução da AMI para controlar quais Contas da AWS têm permissão para iniciar instâncias do EC2 com a AMI criada. Por exemplo, você pode tornar a imagem privada, pública ou compartilhar com contas específicas. Se você distribuir a AMI para outras regiões e definir permissões de execução para outras contas, as permissões de execução serão propagadas para as AMIs em todas as regiões nas quais a AMI é distribuída.

Você também pode usar sua AWS Organizations conta para impor limitações às contas dos membros para iniciar instâncias somente com AMIs aprovadas e compatíveis. Para obter mais informações, consulte Gerenciando o Contas da AWS em sua organização.

Para atualizar suas configurações de distribuição usando o console do Image Builder, siga as etapas para Criar uma nova versão de uma fórmula de imagem (console), ou Crie uma nova versão de receita de contêiner com o console.

Compartilhar recursos

Para compartilhar componentes, receitas ou imagens com outras contas ou dentro delas AWS Organizations, consulteCompartilhar recursos do EC2 Image Builder.

Conformidade

Para o CIS, o EC2 Image Builder usa o Amazon Inspector para realizar avaliações de exposição, vulnerabilidades e desvios das melhores práticas e padrões de conformidade. Por exemplo, o Image Builder avalia a acessibilidade não intencional da rede, os CVEs sem patches, a conectividade pública com a Internet e a ativação remota do login raiz. O Amazon Inspector é oferecido como um componente de teste que você pode escolher adicionar à sua fórmula de imagem. Para obter mais informações sobre o Amazon Inspector, consulte o Manual do usuário do Amazon Inspector. Para fortalecimento, o EC2 Image Builder é validado com STIG. Para obter uma lista completa dos componentes do STIG disponíveis por meio do Image Builder, consulte Componentes de fortalecimento do STIG gerenciados pela Amazon para o EC2 Image Builder. Para obter mais informações, consulte os benchmarks do Center for Internet Security (CIS).