Ajudar a melhorar esta página
Para contribuir com este guia de usuário, escolha o link Editar esta página no GitHub, disponível no painel direito de cada página.
Desenvolvimento de uma AMI do Amazon Linux personalizada e otimizada para o EKS
Atenção
A partir de 26 de novembro de 2025, a Amazon EKS não publica mais AMIs do Amazon Linux 2 (AL2) otimizadas para o EKS. As AMIs baseadas no AL2023 e no Bottlerocket para o Amazon EKS estão disponíveis para todas as versões compatíveis com Kubernetes, incluindo a versão 1.33 e as versões posteriores.
O Amazon EKS fornece scripts de desenvolvimento de código aberto no repositório Amazon EKS AMI Build Specificationkubelet, do runtime e do AWS IAM Authenticator for Kubernetes, além de criar sua própria AMI baseada no AL do zero.
Este repositório contém o script de inicialização especializado para AL2
Ao criar AMIs personalizadas usando AMIs otimizadas para o EKS como base, não é recomendado nem suportado executar uma atualização do sistema operacional (por exemplo, dnf upgrade) ou atualizar qualquer um dos pacotes do Kubernetes ou de GPU incluídos nas AMIs otimizadas para o EKS, pois isso pode comprometer a compatibilidade entre os componentes. Se você optar por atualizar o sistema operacional ou os pacotes incluídos nas AMIs otimizadas para o EKS, é recomendável realizar testes completos em um ambiente de desenvolvimento ou de preparação antes da implantação em um ambiente de produção.
Ao criar AMIs personalizadas para instâncias de GPU, recomenda-se desenvolver AMIs personalizadas distintas para cada geração e família de instâncias que você pretende executar. As AMIs aceleradas e otimizadas para o EKS realizam a instalação seletiva de drivers e pacotes durante o runtime, de acordo com a geração e a família do tipo de instância subjacente. Para obter mais informações, consulte os scripts de instalação
Pré-requisitos
Início rápido
Este guia de início rápido apresenta os comandos para criar uma AMI personalizada na conta da AWS. Para saber mais sobre as configurações disponíveis para personalizar sua AMI, consulte as variáveis de modelo na página Amazon Linux 2023
Pré-requisitos
Instale o plug-in da Amazon
packer plugins install github.com/hashicorp/amazon
Etapa 1. Configurar o ambiente
Clone ou bifurque o repositório oficial de AMIs do Amazon EKS. Por exemplo:
git clone https://github.com/awslabs/amazon-eks-ami.git cd amazon-eks-ami
Verifique se o Packer está instalado:
packer --version
Etapa 2. Criar uma AMI do personalizada
Veja a seguir exemplos de comando de várias AMIs personalizadas.
AMI do NVIDIA AL2 básica:
make k8s=1.31 os_distro=al2 \ enable_accelerator=nvidia \ nvidia_driver_major_version=560 \ enable_efa=true
AMI do NVIDIA AL2023 básica:
make k8s=1.31 os_distro=al2023 \ enable_accelerator=nvidia \ nvidia_driver_major_version=560 \ enable_efa=true
AMI do Neuron AL2023 compatível com STIG:
make k8s=1.31 os_distro=al2023 \ enable_accelerator=neuron \ enable_fips=true \ source_ami_id=ami-0abcd1234efgh5678 \ kms_key_id=alias/aws-stig
Depois de executar esses comandos, o Packer fará o seguinte: * Executará uma instância temporária do Amazon EC2. * Instalará componentes, drivers e configurações do Kubernetes. * Criará a AMI em sua conta da AWS.
A saída esperada deve ser semelhante a essa:
==> Wait completed after 8 minutes 42 seconds ==> Builds finished. The artifacts of successful builds are: --> amazon-ebs: AMIs were created: us-west-2: ami-0e139a4b1a7a9a3e9 --> amazon-ebs: AMIs were created: us-west-2: ami-0e139a4b1a7a9a3e9 --> amazon-ebs: AMIs were created: us-west-2: ami-0e139a4b1a7a9a3e9
Etapa 3. Visualizar valores padrão
Para visualizar valores padrão e opções adicionais, execute o seguinte comando:
make help