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á.
Configurar compilação de imagens personalizadas com o Image Builder
Antes de criar imagens com o EC2 Image Builder, verifique se você atendeu aos seguintes pré-requisitos para criar um pipeline de imagens. Salvo indicação específica em contrário, esses pré-requisitos são necessários para todos os tipos de pipeline.
Pré-requisitos
Depois de atender aos pré-requisitos, você pode gerenciar o EC2 Image Builder a partir de qualquer uma das interfaces a seguir.
Perfil vinculado ao serviço do Image Builder
EC2 O Image Builder usa uma função vinculada ao serviço para conceder permissões a outros AWS serviços em seu nome. Não é necessário criar manualmente um perfil vinculado ao serviço. Quando você cria seu primeiro recurso do Image Builder no AWS Management Console, no AWS CLI, ou na AWS API, o Image Builder cria a função vinculada ao serviço para você. Para obter mais informações sobre o perfil vinculado ao serviço criada pelo Image Builder na sua conta, consulte Usar perfis do IAM vinculados ao serviço para o Image Builder.
Requisitos de configuração
-
O Image Builder é compatível com AWS PrivateLink. Para obter mais informações sobre como configurar endpoints da VPC para o Image Builder, consulte Image Builder e AWS PrivateLink interface VPC endpoints.
-
As instâncias que o Image Builder usa para criar imagens de contêiner devem ter acesso à Internet para baixá-las AWS CLI do Amazon S3 e baixar uma imagem base do repositório do Docker Hub, se aplicável. O Image Builder usa o AWS CLI para obter o Dockerfile da receita do contêiner, onde ele é armazenado como dados.
-
As instâncias que o Image Builder usa para criar imagens e executar testes devem ter acesso ao serviço Systems Manager. Os requisitos de instalação dependem do seu sistema operacional.
Para ver os requisitos de instalação da imagem base, escolha a guia que corresponde ao sistema operacional da imagem base.
Repositório de contêiner para pipelines de imagens de contêiner
Para pipelines de imagens de contêiner, a fórmula define a configuração das imagens do Docker que são produzidas e armazenadas no repositório dos contêineres de destino. Você deve criar o repositório de destino antes de criar a fórmula do contêiner para sua imagem do Docker.
O Image Builder usa o Amazon ECR como seu repositório de destino para imagens de contêineres. Para criar um repositório do Amazon ECR, siga as etapas descritas em Criar um repositório no Manual do usuário do Amazon Elastic Container Registry.
Host dedicado para imagens do macOS
As instâncias do Amazon EC2 Mac exigem um host dedicado executado em um tipo de instância metálica. Antes de criar uma imagem personalizada do macOS, você deve alocar um host dedicado à sua conta. Para obter mais informações sobre instâncias do Mac e uma lista dos tipos de instância que oferecem suporte nativo ao sistema operacional macOS, consulte Instâncias do EC2 Amazon Mac no Guia do usuário da EC2 Amazon.
Depois de criar um host dedicado, você pode definir as configurações no recurso de configuração de infraestrutura da sua imagem. A configuração da infraestrutura inclui propriedades de posicionamento nas quais você pode especificar o host, o grupo de posicionamento do host ou a zona de disponibilidade para onde devem ir as instâncias executadas por meio de sua imagem.
Pré-requisitos do IAM
O perfil do IAM que você associa ao seu perfil de instância precisa ter permissões para executar os componentes de criação e teste incluídos na sua imagem. As seguintes políticas de perfil do IAM devem ser anexadas à função do IAM associada ao perfil de instância:
-
Amazon SSMManaged InstanceCore
Se você configurar o registro em log, o perfil de instância especificado na configuração da sua infraestrutura deverá ter s3:PutObject
permissões para o bucket de destino (arn:aws:s3:::
). Por exemplo:BucketName
/*
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::
bucket-name
/*" } ] }
Anexar política
As etapas a seguir orientam você pelo processo de anexar as políticas do IAM a um perfil do IAM para conceder as permissões anteriores.
-
Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/
. -
No painel de navegação à esquerda, escolha Políticas.
-
Filtre a lista de políticas com EC2InstanceProfileForImageBuilder
-
Selecione o bullet ao lado da política e, na lista suspensa Ações de política, selecione Anexar.
-
Selecione o nome do perfil do IAM ao qual a política de mascaramento será anexada.
-
Escolha Anexar política.
-
Repita as etapas de 3 a 6 para o EC2InstanceProfileForImageBuilderECRContainerBuildse SSMManaged InstanceCore políticas da Amazon.
nota
Se quiser copiar uma imagem criada com o Image Builder em outra conta, você deve criar o perfil do EC2ImageBuilderDistributionCrossAccountRole
em todas as contas de destino e anexar a política gerenciada do Ec2ImageBuilderCrossAccountDistributionAccess política à função. Para obter mais informações, consulte Compartilhe recursos do Image Builder com AWS RAM.
Pré-requisitos do Systems Manager Agent
EC2 O Image Builder executa o Agente AWS Systems Manager (Systems Manager) nas EC2 instâncias que ele executa para criar e testar sua imagem. O Image Builder coleta informações adicionais sobre a instância usada durante a fase de compilação com o Systems Manager Inventory. Essas informações incluem o nome e a versão do sistema operacional (SO), bem como a lista de pacotes e suas respectivas versões, conforme relatado pelo seu sistema operacional.
Para optar por não coletar essas informações, selecione o método correspondente ao ambiente de sua preferência:
-
Console do Image Builder: desmarque a caixa de seleção Habilitar a coleta de metadados aprimorada.
-
AWS CLI: especifique a opção
--no-enhanced-image-metadata-enabled
. -
API Image Builder ou SDKs — Defina o
enhancedImageMetadataEnabled
parâmetro comofalse
.
O Image Builder usa RunCommand
para enviar ações à instância de compilação e teste como parte do fluxo de trabalho de compilação e teste de imagens. Você não pode optar por não usar o RunCommand
para enviar ações para sua instância de compilação e teste.