Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Choisissez un type d'instance de EC2 nœud Amazon optimal
Amazon EC2 propose une large sélection de types d'instances pour les nœuds de travail. Chaque type d'instance offre des capacités de calcul, de mémoire, de stockage et de réseau différentes. Chaque instance est également regroupée dans une famille d'instances en fonction de ces capacités. Pour obtenir une liste, consultez la section Types d'instances disponibles dans le guide de EC2 l'utilisateur Amazon. Amazon EKS publie plusieurs variantes d'Amazon EC2 AMIs pour permettre le support. Pour vous assurer que le type d'instance que vous sélectionnez est compatible avec AmazonEKS, tenez compte des critères suivants.
-
Actuellement, tous les Amazon EKS AMIs ne prennent pas en charge les
mac
famillesg5g
et les familles. -
Arm et Amazon non accéléré EKS AMIs ne prend pas en charge les
g3
,g4
inf
, etp
les familles. -
Amazon accéléré EKS AMIs ne prend pas en charge les
a
c
,hpc
,m
, ett
les familles. -
Pour les instances basées sur ARM, Amazon Linux 2023 (AL2023) ne prend en charge que les types d'instances qui utilisent Graviton2 ou processeurs ultérieurs. AL2023 ne prend pas en charge les
A1
instances.
Lorsque vous choisissez entre les types d'instances pris en charge par AmazonEKS, tenez compte des fonctionnalités suivantes pour chaque type.
- Nombre d'instances dans un groupe de nœuds
-
En général, il est préférable d'utiliser des instances moins nombreuses et plus volumineuses, surtout si vous avez beaucoup de Daemonsets. Chaque instance nécessite API des appels au API serveur. Ainsi, plus vous avez d'instances, plus le API serveur est chargé.
- Système d’exploitation
-
Examinez les types d'instances pris en charge pour Linux, Windows et Bottlerocket
. Avant de créer Windows instances, consultez Déployer des nœuds Windows sur EKS des clusters. - Architecture matérielle
-
Vous avez besoin x86 or Arm? Avant le déploiement Arm instances, consultez Arm Amazon Linux EKS optimisé par Amazon AMIs. Avez-vous besoin d'instances basées sur Nitro System (Linux ou Windows) ou dotés de fonctionnalités accélérées ? Si vous avez besoin de fonctionnalités accélérées, vous pouvez uniquement utiliser Linux avec AmazonEKS.
- Nombre maximum de Pods
-
Depuis chaque Pod se voit attribuer sa propre adresse IP, le nombre d'adresses IP prises en charge par un type d'instance est un facteur déterminant le nombre de Pods qui peut s'exécuter sur l'instance. Pour déterminer manuellement combien Pods un type d'instance prend en charge, voirMaximum EKS recommandé par Amazon Pods pour chaque type d'EC2instance Amazon. +
NOTE: If you’re using an Amazon EKS optimized Amazon Linux 2 AMI that’s `v20220406
ou plus récent, vous pouvez utiliser un nouveau type d'instance sans passer à la dernière versionAMI. Pour ceux-ciAMIs, lamax-pods
valeur nécessaire est AMI calculée automatiquement si elle n'est pas répertoriée dans le eni-max-podsfichier .txt.Les types d'instances actuellement en version préliminaire peuvent ne pas être pris en charge par Amazon EKS par défaut. Les valeurs de « max-pods » pour ces types doivent encore être ajoutées dans notre. eni-max-pods.txt
AMIAWS Les types d'instances Nitro System
prennent éventuellement en charge un plus grand nombre d'adresses IP que les types d'instances autres que Nitro System. Cependant, toutes les adresses IP attribuées à une instance ne sont pas disponibles pour Pods. Pour attribuer un nombre nettement plus important d'adresses IP à vos instances, vous devez disposer de la version 1.9.0
ou ultérieure du VPC CNI module complémentaire Amazon installée dans votre cluster et configurée de manière appropriée. Pour de plus amples informations, veuillez consulter Attribuez davantage d'adresses IP aux EKS nœuds Amazon avec des préfixes. Pour attribuer le plus grand nombre d'adresses IP à vos instances, vous devez installer la version1.10.1
ou une version ultérieure du VPC CNI module complémentaire Amazon dans votre cluster et déployer le cluster avec laIPv6
famille. - Famille IP
-
Vous pouvez utiliser n'importe quel type d'instance pris en charge lorsque vous utilisez la
IPv4
famille d'un cluster, ce qui permet à votre cluster d'attribuerIPv4
des adresses privées à votre Pods et services. Mais si vous souhaitez utiliser la familleIPv6
pour votre cluster, alors vous devez utiliser les types d'instance AWS Nitro Systemou les types d'instance matériel nu. N' IPv4
est pris en charge que pour Windows instances. Votre cluster doit exécuter la version1.10.1
ou une version ultérieure du VPC CNI module complémentaire Amazon. Pour plus d'informations sur l'utilisation deIPv6
, consultez En savoir plus sur IPv6 les adresses des clusters, pods, et services. - Version du VPC CNI module complémentaire Amazon que vous utilisez
-
La dernière version du VPCCNIplugin Amazon pour Kubernetes
prend en charge ces types d'instances. Vous devrez peut-être mettre à jour la version de votre VPC CNI module complémentaire Amazon pour tirer parti des derniers types d'instances pris en charge. Pour de plus amples informations, veuillez consulter Amazon VPC CNI. La dernière version prend en charge les dernières fonctionnalités destinées à être utilisées avec AmazonEKS. Les versions antérieures ne prennent pas en charge toutes les fonctionnalités. Vous pouvez consulter les fonctionnalités prises en charge par les différentes versions dans le Changelog sur GitHub. - AWS Région dans laquelle vous créez vos nœuds
-
Tous les types d'instances ne sont pas disponibles dans toutes les AWS régions.
- Si vous utilisez des groupes de sécurité pour Pods
-
Si vous utilisez des groupes de sécurité pour Pods, seuls des types d'instances spécifiques sont pris en charge. Pour de plus amples informations, veuillez consulter Attribuer des groupes de sécurité à un individu pods.
Maximum EKS recommandé par Amazon Pods pour chaque type d'EC2instance Amazon
Depuis chaque Pod se voit attribuer sa propre adresse IP, le nombre d'adresses IP prises en charge par un type d'instance est un facteur déterminant le nombre de Pods qui peut s'exécuter sur l'instance. Amazon EKS fournit un script que vous pouvez télécharger et exécuter pour déterminer le nombre maximum de EKS Pods à exécuter sur chaque type d'instance. Le script utilise les attributs matériels de chaque instance et les options de configuration pour déterminer le maximum Pods numéro. Vous pouvez utiliser le numéro renvoyé lors de ces étapes pour activer des fonctionnalités telles que l'attribution d'adresses IP à des pods à partir d'un sous-réseau différent de celui de l'instance et l'augmentation significative du nombre d'adresses IP pour votre instance. Si vous utilisez un groupe de nœuds géré avec plusieurs types d'instances, utilisez une valeur qui fonctionne pour tous les types d'instances.
-
Téléchargez un script que vous pouvez utiliser pour calculer le nombre maximum de Pods pour chaque type d'instance.
curl -O https://raw.githubusercontent.com/awslabs/amazon-eks-ami/master/templates/al2/runtime/max-pods-calculator.sh
-
Marquez le script comme exécutable sur votre ordinateur.
chmod +x max-pods-calculator.sh
-
Exécutez le script en remplaçant
m5.large
avec le type d'instance que vous prévoyez de déployer et1.9.0-eksbuild.1
avec votre version VPC CNI complémentaire Amazon. Pour déterminer la version de votre module complémentaire, consultez les procédures de mise à jour dans Assign IPs to Pods with the Amazon VPC CNI../max-pods-calculator.sh --instance-type m5.large --cni-version 1.9.0-eksbuild.1
L'exemple qui suit illustre un résultat.
29
Vous pouvez ajouter les options suivantes au script pour voir le maximum Pods pris en charge lors de l'utilisation de fonctionnalités optionnelles.
-
--cni-custom-networking-enabled
— Utilisez cette option lorsque vous souhaitez attribuer des adresses IP provenant d'un sous-réseau différent de celui de votre instance. Pour de plus amples informations, veuillez consulter Déploiement pods dans des sous-réseaux alternatifs avec mise en réseau personnalisée. L'ajout de cette option au script précédent avec les mêmes valeurs d'exemple donne20
. -
--cni-prefix-delegation-enabled
: utilisez cette option lorsque vous souhaitez attribuer beaucoup plus d'adresses IP à chaque interface réseau Elastic. Cette fonctionnalité nécessite une instance Amazon Linux exécutée sur le système Nitro et une version1.9.0
ou une version ultérieure du VPC CNI module complémentaire Amazon. Pour de plus amples informations, veuillez consulter Attribuez davantage d'adresses IP aux EKS nœuds Amazon avec des préfixes. L'ajout de cette option au script précédent avec les mêmes valeurs d'exemple donne110
.
-
Vous pouvez également exécuter le script avec l'option --help
permettant de voir toutes les options disponibles.
Note
Le maximum Pods Un script de calcul limite la valeur de retour en 110
fonction des seuils d'évolutivité de Kubernetes et des250
, un chiffre basé sur les tests internes de l'équipe d'EKSévolutivité d'Amazon. Pour plus d'informations, consultez le billet de blog intitulé « Le VPCCNIplugin Amazon augmente le nombre de pods par nœud