Comprendre Fargate Pod détails de configuration - Amazon EKS

Aidez à améliorer cette page

Vous souhaitez contribuer à ce guide de l'utilisateur ? Faites défiler cette page vers le bas et sélectionnez Modifier cette page sur GitHub. Vos contributions aideront à améliorer notre guide de l'utilisateur pour tous.

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.

Comprendre Fargate Pod détails de configuration

Important

AWS Fargate with Amazon EKS n'est pas disponible en AWS GovCloud (USA Est) et AWS GovCloud (USA Ouest).

Cette section décrit certaines des Pod détails de configuration pour l'exécution Kubernetes Pods sur AWS Fargate.

Pod CPUet mémoire

Avec Kubernetes, vous pouvez définir des demandes, une CPU quantité minimale en v et les ressources de mémoire allouées à chaque conteneur dans un Pod. Pods sont programmés par Kubernetes pour s'assurer qu'au moins les ressources demandées pour chaque Pod sont disponibles sur la ressource de calcul. Pour plus d'informations, consultez la section Gestion des ressources de calcul pour les conteneurs dans le Kubernetes .

Note

Étant donné qu'Amazon EKS Fargate n'en exécute qu'un Pod par nœud, le scénario d'expulsion Pods en cas de diminution des ressources, cela ne se produira pas. Tous les Amazon EKS Fargate Pods exécuter avec une priorité garantie, de sorte que la CPU quantité demandée et la mémoire doivent être égales à la limite pour tous les conteneurs. Pour plus d'informations, voir Configurer la qualité de service pour Podsdans le Kubernetes .

Lorsque Pods sont programmés sur Fargate, le CPU v et les réservations de mémoire dans le Pod les spécifications déterminent la quantité CPU et la mémoire à fournir pour Pod.

  • La demande maximale provenant de tous les conteneurs d'initialisation est utilisée pour déterminer la demande d'initialisation v CPU et les besoins en mémoire.

  • Les demandes pour tous les conteneurs de longue durée sont additionnées pour déterminer la demande de longue durée v CPU et les besoins en mémoire.

  • La plus grande des deux valeurs précédentes est choisie pour le v CPU et la demande de mémoire à utiliser pour votre Pod.

  • Fargate ajoute 256 Mo à chacun Podde la réservation de mémoire pour le Kubernetes composants (kubeletkube-proxy, etcontainerd).

Fargate arrondit à la configuration de calcul suivante qui correspond le mieux à la somme de CPU v et de demandes de mémoire afin de garantir Pods disposent toujours des ressources dont ils ont besoin pour fonctionner.

Si vous ne spécifiez pas de combinaison v CPU et mémoire, la plus petite combinaison disponible est utilisée (0,25 v CPU et 0,5 Go de mémoire).

Le tableau suivant indique les combinaisons v CPU et mémoire disponibles pour Pods en cours d'exécution sur Fargate.

CPUvaleur v Valeur de mémoire

2,5 v CPU

0,5 Go, 1 Go, 2 Go

0,5 v CPU

1 Go, 2 Go, 3 Go, 4 Go

1 v CPU

2 Go, 3 Go, 4 Go, 5 Go, 6 Go, 7 Go, 8 Go

2 v CPU

Entre 4 Go et 16 Go par incrément de 1 Go

4 v CPU

Entre 8 Go et 30 Go par incrément de 1 Go

8 v CPU

Entre 16 Go et 60 Go par incréments de 4 Go

16 v CPU

Entre 32 Go et 120 Go par incréments de 8 Go

La mémoire supplémentaire réservée au Kubernetes les composants peuvent entraîner le provisionnement d'une tâche Fargate dont le montant est vCPUs supérieur à celui demandé. Par exemple, une demande de mémoire de 1 V CPU et 8 Go sera ajoutée à 256 Mo de mémoire et fournira à une tâche Fargate de vCPUs 2 et 9 Go de mémoire, car aucune tâche avec 1 CPU V et 9 Go de mémoire n'est disponible.

Il n'y a aucune corrélation entre la taille du Pod exécuté sur Fargate et la taille du nœud indiquée par Kubernetes avec kubectl get nodes. La taille du nœud signalée est souvent supérieure à Podcapacité. Vous pouvez vérifier Pod capacité avec la commande suivante. defaultRemplacez-le par votre Poddans l'espace de noms et pod-name avec le nom de votre Pod.

kubectl describe pod --namespace default pod-name

L'exemple qui suit illustre un résultat.

[...] annotations: CapacityProvisioned: 0.25vCPU 0.5GB [...]

L'CapacityProvisionedannotation représente la valeur appliquée Pod capacité et il détermine le coût de votre Pod en cours d'exécution sur Fargate. Pour plus d'informations sur la tarification des configurations de calcul, reportez-vous à Tarification AWS Fargate.

Stockage Fargate

A Pod s'exécutant sur Fargate monte automatiquement un système de fichiers Amazon. EFS Vous ne pouvez pas utiliser l'approvisionnement dynamique des volumes persistants avec les nœuds Fargate, mais vous pouvez utiliser l'approvisionnement statique. Pour plus d'informations, consultez Amazon EFS CSI Driver sur GitHub.

Une fois provisionné, chaque Pod s'exécutant sur Fargate reçoit 20 GiB de stockage éphémère par défaut. Ce type de stockage est supprimé après une Pod s'arrête. New Pods lancés sur Fargate, le chiffrement du volume de stockage éphémère est activé par défaut. L'éphémère Pod le stockage est chiffré à l'aide d'un algorithme de chiffrement AES -256 à l'aide de clés AWS Fargate gérées.

Note

L'espace de stockage utilisable par défaut pour Amazon EKS Pods qui s'exécute sur Fargate est inférieur à 20 GiB. Cela est dû au fait qu'une partie de l'kubeletespace est utilisée par Kubernetes modules chargés à l'intérieur du Pod.

Vous pouvez augmenter la capacité totale de stockage éphémère jusqu'à un maximum de 175 GiB. Pour configurer la taille avec Kubernetes, spécifiez les demandes de ephemeral-storage ressources adressées à chaque conteneur dans un Pod. Quand Kubernetes emplois du temps Pods, il garantit que la somme des demandes de ressources pour chaque Pod est inférieur à la capacité de la tâche Fargate. Pour plus d'informations, voir Gestion des ressources pour Pods et des conteneurs dans le Kubernetes .

Amazon EKS Fargate fournit plus de stockage éphémère que ce qui est demandé aux fins de l'utilisation du système. Par exemple, une demande de 100 GiB allouera à une tâche Fargate une capacité de stockage éphémère de 115 GiB.