Création d’une AMI Amazon Linux personnalisée - Amazon EKS

Aidez à améliorer cette page

Pour contribuer à ce guide de l’utilisateur, cliquez sur le lien Modifier cette page sur GitHub qui se trouve dans le volet droit de chaque page.

Création d’une AMI Amazon Linux personnalisée

Important

Amazon EKS ne publiera plus d’images AMI Amazon Linux 2 (AL2) optimisées pour EKS après le 26 novembre 2025. De plus, la version Kubernetes 1.32 est la dernière version pour laquelle Amazon EKS publiera des AMI AL2. À partir de la version 1.33, Amazon EKS continuera à publier des AMI basées sur AL2023 et Bottlerocket.

Les AMI Amazon Linux (AL) optimisées pour Amazon EKS sont basées sur AL2 et AL2023, et sont spécialement conçues pour être utilisées comme nœuds dans les clusters Amazon EKS. Amazon EKS fournit des scripts de compilation open source dans le référentiel Amazon EKS AMI Build Specification que vous pouvez utiliser pour afficher les configurations pour kubelet, l’exécution, l’authentificateur IAM AWS pour Kubernetes, et créer votre propre AMI basée sur AL à partir de zéro.

Ce référentiel contient le script bootstrap spécialisé et le script nodeadm qui s’exécute au démarrage. Ces scripts configurent les données de certificat de votre instance, le point de terminaison du plan de contrôle, le nom du cluster, et bien plus encore. Les scripts sont considérés comme la source de vérité pour les builds AMI optimisés pour Amazon EKS. Vous pouvez donc suivre le référentiel GitHub pour surveiller les modifications apportées à nos AMI.

Prérequis

Démarrage rapide

Ce guide de démarrage rapide vous présente les commandes permettant de créer une AMI personnalisée dans votre compte AWS. Pour en savoir plus sur les configurations disponibles pour personnaliser votre AMI, consultez les variables de modèle sur la page Amazon Linux 2023.

Prérequis

Installez le plug-in Amazon requis. Par exemple :

packer plugins install github.com/hashicorp/amazon

Étape 1. Configurez votre environnement

Clonez ou créez une fourche du référentiel AMI officiel d’Amazon EKS. Par exemple :

git clone https://github.com/awslabs/amazon-eks-ami.git cd amazon-eks-ami

Vérifiez que Packer est installé :

packer --version

Étape 2. Pour créer une AMI personnalisée

Voici quelques exemples de commandes pour différentes AMI personnalisées.

AMI NVIDIA AL2 de base :

make k8s=1.31 os_distro=al2 \ enable_accelerator=nvidia \ nvidia_driver_major_version=560 \ enable_efa=true

AMI NVIDIA AL2023 de base :

make k8s=1.31 os_distro=al2023 \ enable_accelerator=nvidia \ nvidia_driver_major_version=560 \ enable_efa=true

AMI Neuron AL2023 conforme aux 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

Après avoir exécuté ces commandes, Packer effectuera les opérations suivantes : *Lancer une instance Amazon EC2 temporaire. * Installez les composants, les pilotes et les configurations de Kubernetes. * Créez l’AMI dans votre compte AWS.

Le résultat attendu devrait ressembler à ceci :

==> 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

Étape 3. Afficher les valeurs par défaut

Pour afficher les valeurs par défaut et les options supplémentaires, exécutez la commande suivante :

make help