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.
Configurer l'heure d'expulsion du pod
Le temps d'éviction des pods est utile lors de la conception d'un plan de résilience dans un scénario de défaillance du plan de contrôle ou de la zone de disponibilité. Lors des tests de défaillance de la zone de disponibilité, lorsque les sous-réseaux perdent leur connectivité réseau, tous les nœuds Amazon EKS concernés perdent leur connectivité aux plans de contrôle Amazon EKS. En moins d'une minute, tous les nœuds Amazon EKS concernés sont marqués du NotReady
statut et les points de terminaison du pod ont été ou EndpointSlices ont été supprimés des points de terminaison du service. Cependant, tous les pods exécutés sur les nœuds concernés restent au running
statut par défaut pendant les 5 minutes. Les pods sont ensuite marqués comme telsTERMINATING
, et de nouveaux pods sont programmés.
Le pod-eviction-timeout
paramètre du Kubernetes Controller Manager est défini par défaut sur 5 minutes et peut être mis à jour via le plan de contrôle Kubernetes. Toutefois, Amazon EKS étant un service Kubernetes géré, il n'pod-eviction-timeout
est pas possible de le modifier.
Pour contourner le problème, vous pouvez utiliser des expulsions basées sur l'altération des nœuds.node.kubernetes.io/unreachable
et tolerationSeconds
les node.kubernetes.io/not-ready
valeurs de chaque déploiement. Le code suivant fournit un exemple :
apiVersion: apps/v1 kind: Deployment metadata: name: busybox namespace: default spec: replicas: 2 selector: matchLabels: app: busybox template: metadata: labels: app: busybox spec: tolerations: - key: "node.kubernetes.io/unreachable" operator: "Exists" effect: "NoExecute" tolerationSeconds: 2 - key: "node.kubernetes.io/not-ready" operator: "Exists" effect: "NoExecute" tolerationSeconds: 2 containers: - image: busybox command: - sleep - "3600" imagePullPolicy: IfNotPresent name: busybox restartPolicy: Always