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á.
Usando uma imagem de máquina personalizada da Amazon (AMI) em seu ambiente do Elastic Beanstalk
Esta seção explica quando considerar o uso de um personalizado AMI e fornece os procedimentos para configurar e gerenciar o personalizado AMI em seu ambiente. Quando você cria um AWS Elastic Beanstalk ambiente, você pode especificar uma Amazon Machine Image (AMI) para usar em vez do AMI Elastic Beanstalk padrão incluído na versão da sua plataforma. Um cliente AMI pode melhorar os tempos de provisionamento quando as instâncias são lançadas em seu ambiente se você precisar instalar muitos softwares que não estão incluídos no padrão. AMIs
O uso de arquivos de configuração é eficaz para personalizar seu ambiente de forma rápida e consistente. Embora a aplicação das configurações possa começar a demorar muito tempo durante a criação e as atualizações do ambiente. Se você fizer muitas configurações do servidor nos arquivos de configuração, poderá reduzir esse tempo criando um personalizado AMI que já tenha o software e a configuração de que você precisa.
Um customizado AMI também permite que você faça alterações em componentes de baixo nível, como o kernel Linux, que são difíceis de implementar ou demoram muito para serem aplicados nos arquivos de configuração. Para criar um personalizadoAMI, execute uma plataforma do Elastic AMI Beanstalk EC2 na Amazon, personalize o software e a configuração de acordo com suas necessidades e, em seguida, interrompa a instância AMI e salve uma dela.
Criando um personalizado AMI
Você pode usar o EC2Image Builder
Para identificar a base do Elastic Beanstalk AMI
-
Em uma janela de comando, execute um comando semelhante ao seguinte. Para obter mais informações, consulte describe-platform-versionno AWS CLI Referência de comando.
Especifique o AWS Região em que você deseja usar seu aplicativo personalizado AMI e substitua a plataforma ARN e o número da versão pela plataforma do Elastic Beanstalk na qual seu aplicativo se baseia.
exemplo - Mac OS/SO Linux
$
aws elasticbeanstalk describe-platform-version --region
[ { "VirtualizationType": "pv", "ImageId": "" }, { "VirtualizationType": "hvm", "ImageId": "us-east-2
\ --platform-arn "arn:aws:elasticbeanstalk:us-east-2
::platform/Node.js 20 running on 64bit Amazon Linux 2023
/6.1.7
" \ --query PlatformDescription.CustomAmiListami-020ae06fdda6a0f66
" } ]exemplo - SO Windows
C:\> aws elasticbeanstalk describe-platform-version --region
[ { "VirtualizationType": "pv", "ImageId": "" }, { "VirtualizationType": "hvm", "ImageId": "us-east-2
--platform-arn"arn:aws:elasticbeanstalk:us-east-2
::platform/IIS 10.0 running on 64bit Windows Server 2022
/2.15.3
" --query PlatformDescription.CustomAmiListami-020ae06fdda6a0f66
" } ] -
Anote o valor
ImageId
, que será semelhante aami-020ae06fdda6a0f66
no resultado.
O valor é o AMI Elastic Beanstalk padrão para a versão da plataformaEC2, arquitetura da instância e AWS Regiões que são relevantes para sua inscrição. Se você precisar criar AMIs para várias plataformas, arquiteturas ou AWS Regiões, repita esse processo para identificar a base correta AMI para cada combinação.
nota
Não crie uma a AMI partir de uma instância que foi lançada em um ambiente do Elastic Beanstalk. O Elastic Beanstalk faz alterações nas instâncias durante o provisionamento que podem causar problemas nos arquivos salvos. AMI Salvar uma imagem de uma instância em um ambiente do Elastic Beanstalk também faz com que a versão da aplicação que foi implantada na instância seja uma parte fixa da imagem.
Para Linux, também é possível criar um personalizado a AMI partir de uma comunidade AMI que não foi publicada pelo Elastic Beanstalk. Você pode usar o Amazon Linux
nota
Os modelos personalizados AMIs baseados no Windows Server exigem que o Elastic Beanstalk AMI original seja describe-platform-version
devolvido, conforme mostrado anteriormente na Etapa 1.
Embora o Elastic Beanstalk possa AMI usar um que não seja gerenciado pelo Elastic Beanstalk, o aumento no tempo de provisionamento resultante da instalação de componentes ausentes pelo Elastic Beanstalk pode reduzir ou eliminar os benefícios de criar um personalizado em primeiro lugar. AMI Outras distribuições do Linux talvez funcionem com a solução de alguns problemas, mas não são oficialmente compatíveis. Se a aplicação exigir uma distribuição específica do Linux, uma alternativa será criar uma imagem de Docker e executá-la na plataforma Docker ou na plataforma Docker de vários contêineres do Elastic Beanstalk.
Para criar um personalizado AMI
Abra o EC2 console da Amazon em https://console.aws.amazon.com/ec2/
. -
Escolha Executar instância.
-
Se você identificou um AMI Elastic Beanstalk básico (
describe-platform-version
usando) ou um AMI Amazon Linux, AMI insira seu ID na caixa de pesquisa. Em seguida, pressione Enter.Você também pode pesquisar na lista outra comunidade AMI que atenda às suas necessidades.
nota
Recomendamos que você escolha um AMI que use HVM virtualização. Eles AMIs mostram o tipo de virtualização: hvm em sua descrição.
Para obter mais informações, consulte Tipos de virtualização no Guia do EC2 usuário da Amazon.
-
Escolha Selecionar para selecionar AMI o.
-
Selecione um tipo de instância e, a seguir, escolha Próximo: Configurar detalhes da instância.
-
(Para plataformas Amazon Linux AMI (AL1) descontinuadas) Pule esta etapa se seu ambiente for executado em uma plataforma compatível baseada em Linux ou em uma plataforma Windows.
Expanda a seção Detalhes avançados e cole o texto a seguir no campo Dados do usuário.
#cloud-config repo_releasever:
repository version number
repo_upgrade: noneO número da versão do repositório é a versão do ano e do mês no AMI nome. Por exemplo, AMIs com base na versão de março de 2015 do Amazon Linux, tenha um número
2015.03
de versão do repositório. Para uma imagem do Elastic Beanstalk, isso corresponde à data mostrada no nome da pilha de soluções para a versão da sua plataforma baseada no Amazon AMI Linux (anterior ao Amazon Linux 2).nota
A
repo_releasever
configuração configura o lock-on-launch recurso para um Amazon Linux. AMI Isso faz com AMI que o use uma versão fixa e específica do repositório ao ser iniciado. Esse recurso não é compatível com o Amazon Linux 2, ou seja, não o especifique se seu ambiente usa uma ramificação de plataforma atual do Amazon Linux 2. A configuração é necessária se você estiver usando uma configuração personalizada AMI com o Elastic Beanstalk somente nas ramificações da plataforma AMI Amazon Linux (antes do Amazon Linux 2).A configuração
repo_upgrade
desativa a instalação automática de atualizações de segurança. É necessário usar um personalizado AMI com o Elastic Beanstalk. -
Prossiga com o assistente para iniciar a EC2 instância. Quando solicitado, selecione um par de chaves ao qual tenha acesso para que você possa se conectar à instância para as próximas etapas.
-
Conecte-se à instância com SSH ouRDP.
-
Execute todas as personalizações desejadas.
-
(Plataformas Windows) Execute o EC2Config serviço Sysprep. Para obter informações sobre issoEC2Config, consulte Como configurar uma instância do Windows usando o EC2Config serviço. Certifique-se de que o Sysprep esteja configurado para gerar uma senha aleatória que possa ser recuperada do AWS Management Console.
-
No EC2 console da Amazon, interrompa a EC2 instância. Em seguida, no menu Ações da instância, escolha Criar imagem (EBSAMI).
-
Para evitar incorrer em mais AWS cobranças, encerre a EC2 instância.
Para usar seu personalizado AMI em um ambiente do Elastic Beanstalk
Abra o console do Elastic
Beanstalk e, na lista Regiões, selecione seu Região da AWS. -
No painel de navegação, selecione Ambientes e selecione o nome do ambiente na lista.
nota
Se você tiver muitos ambientes, use a barra de pesquisa para filtrar a lista de ambientes.
No painel de navegação, escolha Configuration (Configuração).
-
Na categoria de configuração Capacity (Capacidade), escolha Edit (Editar).
-
Em AMIID, insira sua AMI ID personalizada.
-
Para salvar as alterações, escolha Apply (Aplicar) na parte inferior da página.
Ao criar um novo ambiente com o personalizadoAMI, você deve usar a mesma versão da plataforma usada como base para criar AMI o.
Gerenciando um ambiente com um personalizado AMI
Atualizações da plataforma
Ao usar uma versão personalizadaAMI, o Elastic Beanstalk continuará usando a AMI mesma personalização em um ambiente quando a versão da plataforma for atualizada, independentemente de a atualização ser aplicada manualmente ou por meio de atualizações gerenciadas da plataforma. O ambiente não será redefinido para usar o estoque AMI da nova versão da plataforma.
Recomendamos que você crie um novo personalizado AMI com base no estoque AMI da nova versão da plataforma. Isso aplicará os patches disponíveis na nova versão da plataforma e também minimizará as falhas de implantação devido a versões incompatíveis de pacotes ou bibliotecas.
Para obter mais informações sobre a criação de um novo personalizadoAMI, consulte o artigo Criando um personalizado AMI anterior neste tópico.
Removendo um personalizado AMI
Se você quiser remover um personalizado AMI de um ambiente e redefini-lo para usar o estoque AMI da versão da plataforma do ambiente, use o CLI comando a seguir.
aws elasticbeanstalk update-environment \ --application-name
my-application
\ --environment-namemy-environment
\ --regionus-east-1
\ --options-to-remove Namespace=aws:autoscaling:launchconfiguration,OptionName=ImageId
nota
Para evitar a interrupção do serviço, teste seu aplicativo com um estoque AMI antes de aplicar essa alteração ao seu ambiente de produção.
Limpando um costume AMI
Quando você terminar de usar uma personalização AMI e não precisar mais dela para iniciar ambientes do Elastic Beanstalk, considere limpá-la para minimizar o custo de armazenamento. Limpar um costume AMI envolve cancelar o registro dele na Amazon EC2 e excluir outros recursos associados. Para obter detalhes, consulte Cancelando o registro do Linux AMI ou Cancelando o registro do Windows. AMI