Como funciona o EC2 Image Builder - 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 funciona o EC2 Image Builder

Quando você usa o assistente do console de pipeline do EC2 Image Builder para criar uma imagem personalizada, um assistente orienta você 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. Defina a configuração da infraestrutura — O Image Builder inicia EC2 instâncias 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 receita que pode ser usada com sistemas de controle de versão existentes e pipelines integration/continuous deployment (CI/CD (contínuos) para automação repetível. Você pode compartilhar e criar novas versões da sua fórmula.

Elementos da AMI

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

Uma AMI inclui os seguintes elementos:

  • Um modelo para o volume raiz da VM. Quando você inicia uma Amazon EC2 VM, o volume do dispositivo raiz contém a imagem para inicializar 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 obter mais informações, consulte Amazon EC2 Root Device Volume.

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

  • Permissões de lançamento que determinam o Contas da AWS que pode ser iniciado 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

EC2 O Image Builder usa um aplicativo de gerenciamento de componentes AWS Task Orchestrator and Executor (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, consulteConfiguração manual para desenvolver componentes personalizados 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, consulteUsar componentes para personalizar sua imagem do Image Builder. Para obter mais informações sobre a criação de componentes com AWSTOE, consulte Como o Image Builder usa o AWS Task Orchestrator and Executor aplicativo para gerenciar 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
  • EC2 instância (temporária)

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

  • Amazon EC2 AMI

  • O Amazon EBS Snapshot associado ao Amazon AMI EC2

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

  • A Systems Manager Inventory Association (por meio do Systems Manager State Manager) EnhancedImageMetadata está ativada) na EC2 instância

  • Imagem do contêiner do docker

  • Dockerfile

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

Distribuição

EC2 O Image Builder pode distribuir AMIs ou armazenar imagens em qualquer AWS 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 executar EC2 instâncias 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 todas as regiões nas quais a AMI é distribuída. AMIs

Você também pode usar sua AWS Organizations conta para impor limitações às contas dos membros para iniciar instâncias somente com instâncias aprovadas e em conformidade AMIs. 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 versão de uma fórmula de imagem com o console, ou Crie uma nova versão de fórmula de contêiner com o console.

Compartilhar recursos

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

Compliance

Para os benchmarks do Center for Internet Security (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, a conectividade pública sem patches com CVEs 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 Guia do usuário do Amazon Inspector. Para obter mais informações, consulte Center for Internet Security (CIS) Benchmarks.

O Image Builder fornece componentes de fortalecimento do STIG para ajudá-lo a compilar, de forma mais eficiente, imagens compatíveis para os padrões do STIG de base. Esses componentes do STIG verificam se há configurações incorretas e executam um script de correção. Não há cobranças adicionais pelo uso de componentes em conformidade com o STIG. Para obter uma lista completa dos componentes do STIG disponíveis por meio do Image Builder, consulte Componentes de hardening do STIG gerenciados pela Amazon para o Image Builder.