Versions de cluster Kubernetes compatibles

Chaque version de GKE sur AWS est accompagnée de notes de version de Kubernetes. Elles sont semblables aux notes de version, mais sont spécifiques à une version de Kubernetes et peuvent fournir des détails plus techniques.

GKE sur AWS est compatible avec les versions suivantes de Kubernetes :

Kubernetes 1.28

1.28.7-gke.1700

Notes de version de Kubernetes OSS

  • Correction de bug:correction d'un problème qui empêchait parfois la liaison de l'émulateur IMDS (Instance Metadata Service) à une adresse IP sur le nœud. L'émulateur IMDS permet aux nœuds d'accéder en toute sécurité aux métadonnées des instances AWS EC2.

1.28.5-gke.1200

Notes de version de Kubernetes OSS

1.28.5-gke.100

Notes de version de Kubernetes OSS

1.28.3-gke.700

Notes de version de Kubernetes OSS

  • Modification destructive:À partir de Kubernetes 1.28, les clusters nécessitent une connectivité HTTPS sortante à {GCP_LOCATION}-gkemulticloud.googleapis.com. Vérifiez que votre serveur proxy et/ou votre pare-feu autorisent ce trafic.
  • Modification destructive:À partir de Kubernetes 1.28, le rôle Agent de service de l'API multicloud nécessite une nouvelle autorisation Iam:getinstanceprofile sur votre projet AWS. Cette autorisation permet au service multicloud d'inspecter les profils d'instance associés aux instances de machines virtuelles dans le cluster.

  • Fonctionnalité:ajout de la prise en charge du rollback pour les pools de nœuds AWS dont les opérations de mise à jour ont échoué. Cela permet aux clients de rétablir l'état d'origine des pools de nœuds.

  • Fonctionnalité:Il est désormais possible d'extraire des images à partir de Google Artifact Registry privé et de Google Container Registry privé sans clé de compte de service Google exportée. Les identifiants d'extraction d'image sont gérés et alternés automatiquement par Google.

  • Fonctionnalité:il n'est plus nécessaire d'ajouter explicitement des liaisons Google IAM pour la plupart des fonctionnalités.

    1. Vous n'avez plus besoin d'ajouter de liaisons pour gke-system/gke-telemetry-agent lors de la création d'un cluster.
    2. Vous n'avez plus besoin d'ajouter de liaisons pour gmp-system/collector ou gmp-system/rule-evaluator lors de l'activation de la collecte de données gérée pour Google Managed Service pour Prometheus.
    3. Il n'est plus nécessaire d'ajouter des liaisons pour gke-system/binauthz-agent lors de l'activation de l'autorisation binaire.
  • Fonctionnalité:la mise à jour d'AWS Surge est désormais en disponibilité générale. Les mises à jour de la surutilisation vous permettent de configurer la vitesse et l'interruption des mises à jour des pools de nœuds. Pour plus d'informations sur l'activation et la configuration des paramètres de la montre Surge dans vos pools de nœuds AWS, consultez la page Configurer les mises à jour de la montre Surge pour les pools de nœuds.

  • Fonctionnalité:mise à niveau du noyau pour Ubuntu 22.04 vers linux-aws 6.2.

  • Fonctionnalité:ajout de la possibilité de créer des pools de nœuds à l'aide des instances AWS EC2 suivantes: G5, I4g, M7a, M7g, M7i, R7g, R7i et R7iz.

  • Correction de bug:la création de modèles de lancement a été améliorée. Les balises fournies par les clients sont propagées aux instances.

    • Cette modification améliore principalement la compatibilité avec les règles de stratégie IAM. Il aborde spécifiquement les règles qui interdisent l'utilisation de modèles de lancement qui ne sont pas compatibles avec la propagation des balises, même dans les cas où le groupe d'autoscaling associé (ASG) propage les balises.
    • Il peut s'agir d'une modification destructive, en fonction des spécificités de la stratégie IAM du client concernant la vérification des tags. Par conséquent, il est important de faire preuve de prudence lors du processus de mise à niveau, car une mauvaise gestion peut entraîner une dégradation d'un cluster.
    • L'action ec2:CreateTags sur la ressource arn:aws:ec2:*:*:instance/* est requise pour le rôle d'agent de service de l'API multicloud Anthos. Veuillez consulter la page https://cloud.google.com/anthos/clusters/docs/multi-cloud/aws/how-to/create-aws-iam-roles#create_service_agent_role pour obtenir les dernières informations.
    • Nous suggérons aux clients d'essayer de créer un cluster 1.28 non fiable et de vérifier que les stratégies IAM fonctionnent correctement avant d'essayer de passer à la version 1.28.
  • Correction de bug:la mise à niveau d'un cluster vers la version 1.28 nettoie les ressources obsolètes susceptibles d'avoir été créées dans des versions plus anciennes (jusqu'à la version 1.25), mais qui ne sont plus pertinentes. Les ressources suivantes dans l'espace de noms gke-system sont supprimées si elles existent:

    • daemonsets fluentbit-gke-windows et gke-metrics-agent-windows
    • ConfigMap fluentbit-gke-windows-config et gke-metrics-agent-windows-conf
  • Correction de bug:amélioration de l'ingestion des journaux dans Cloud Logging à partir de clusters Anthos sur AWS:

    • Correction d'un problème lié à l'analyse de l'horodatage.
    • Attribution du niveau de gravité approprié aux journaux d'erreurs de anthos-metadata-agent.
  • Correctifs de sécurité

Kubernetes 1.27

1.27.11-gke.1600

Notes de version de Kubernetes OSS

  • Correction de bug:correction d'un problème qui empêchait parfois la liaison de l'émulateur IMDS (Instance Metadata Service) à une adresse IP sur le nœud. L'émulateur IMDS permet aux nœuds d'accéder en toute sécurité aux métadonnées des instances AWS EC2.

1.27.10-gke.500

Notes de version de Kubernetes OSS

1.27.9-gke.100

Notes de version de Kubernetes OSS

1.27.7-gke.600

Notes de version de Kubernetes OSS

  • Fonctionnalité: ajout de la possibilité de créer des pools de nœuds à l'aide de l'instance AWS EC2 "G5".

  • Correction de bug:amélioration de l'ingestion des journaux dans Cloud Logging à partir de clusters Anthos sur AWS:

    • Correction d'un problème lié à l'analyse de l'horodatage.
    • Attribution du niveau de gravité approprié aux journaux d'erreurs de anthos-metadata-agent.
  • Correctifs de sécurité

1.27.6-gke.700

Notes de version de Kubernetes OSS

1.27.5-gke.200

Notes de version de Kubernetes OSS

  • Fonctionnalité:Ubuntu 22.04 utilise désormais la version de noyau linux-aws 6.2.

  • Correctifs de sécurité

1.27.4-gke.1600

Notes de version de Kubernetes OSS * Abandon:le port de lecture seule 10255 du kubelet non authentifié a été désactivé. Une fois qu'un pool de nœuds est mis à niveau vers la version 1.27, les charges de travail qui y sont exécutées ne peuvent plus se connecter au port 10255.

  • Fonctionnalité: La fonctionnalité de mise à jour d'AWS Surge est disponible en mode Aperçu. Les mises à jour de la surutilisation vous permettent de configurer la vitesse et l'interruption des mises à jour des pools de nœuds. Pour activer l'aperçu, veuillez contacter l'équipe chargée de votre compte.
  • Fonctionnalité:mise à niveau du pilote CSI EBS vers la version 1.20.0.
  • Fonctionnalité:mise à niveau du pilote CSI EFS vers la version 1.5.7.
  • Fonctionnalité:mise à niveau de snapshot-controller et csi-snapshot-validation-webhook vers la version 6.2.2. Cette nouvelle version apporte une modification importante à l'API. Plus précisément, les API v1beta1 VolumeSnapshot, VolumeSnapshotContents et VolumeSnapshotClass ne sont plus disponibles.

  • Fonctionnalité:ajout de la prise en charge d'un nouvel indicateur admin-groups dans les API de création et de mise à jour. Cette option permet aux clients d'authentifier rapidement et facilement les groupes listés en tant qu'administrateurs de cluster, ce qui élimine la nécessité de créer et d'appliquer manuellement des stratégies RBAC.

  • Fonctionnalité:ajout de la compatibilité avec l'autorisation binaire, un contrôle de sécurité intervenant au moment du déploiement qui garantit que seules les images de conteneur fiables sont déployées. Avec l'autorisation binaire, vous pouvez exiger que les images soient signées par des autorités de confiance lors du processus de développement, puis appliquer la validation de signature lors du déploiement. Grâce à cette validation, vous pouvez exercer un contrôle plus strict sur votre environnement de conteneurs en vous assurant que seules les images validées sont intégrées au processus de compilation et de déploiement. Pour en savoir plus sur l'activation de l'autorisation binaire sur vos clusters, consultez la page Activer l'autorisation binaire.

  • Fonctionnalité:activation de la compression gzip pour fluent-bit (processeur et redirecteur de journaux), gke-metrics-agent (collecteur de métriques) et audit-proxy (proxy de journal d'audit). fluent-bit compresse les données de journaux du plan de contrôle et des charges de travail avant de les envoyer à Cloud Logging, gke-metrics-agent compresse les données de métriques du plan de contrôle et des charges de travail avant de les envoyer à Cloud Monitoring, et audit-proxy compresse les données du journal d'audit avant de les envoyer à Audit Logging. Cela réduit les coûts et la bande passante du réseau.

  • Fonctionnalité:La création de pools de nœuds AWS SPOT est maintenant accessible à tous.

  • Fonctionnalité:La réparation automatique des nœuds est désormais en phase de disponibilité générale.

  • Fonctionnalité:amélioration de la sécurité grâce à l'ajout de vérifications de l'intégrité des fichiers et de la validation par empreinte digitale pour les artefacts binaires téléchargés depuis Cloud Storage.

  • Fonctionnalité:ajout d'une option ignore_errors à l'API de suppression pour gérer les cas où la suppression accidentelle de rôles IAM ou la suppression manuelle de ressources empêchent la suppression de clusters ou de pools de nœuds. En ajoutant ?ignore_errors=true à l'URL de requête DELETE, les utilisateurs peuvent désormais supprimer de force des clusters ou des pools de nœuds. Cependant, cette approche peut entraîner des ressources orphelines dans AWS ou Azure, nécessitant un nettoyage manuel.

  • Caractéristique:ajout de la prise en charge de la défragmentation périodique automatique de etcd et etcd-events sur le plan de contrôle. Cette fonctionnalité réduit l'espace de stockage sur disque inutile, et permet d'éviter que etcd et le plan de contrôle ne deviennent indisponibles en raison de problèmes de stockage sur disque.

  • Fonctionnalité:Les noms des métriques de ressources Kubernetes ont été modifiés afin d'utiliser le préfixe de métriques kubernetes.io/anthos/ au lieu de kubernetes.io/. Pour en savoir plus, consultez la documentation de référence sur les métriques.

  • Fonctionnalité: Changement de la version par défaut d'etcd vers la version 3.4.21 sur les nouveaux clusters pour améliorer la stabilité. Les clusters existants mis à niveau vers cette version utiliseront etcd v3.5.6.

  • Caractéristique:la gestion des ressources de nœuds a été améliorée en réservant des ressources pour le kubelet. Bien que cette fonctionnalité soit essentielle pour éviter les erreurs de mémoire insuffisante en s'assurant que les processus système et Kubernetes disposent des ressources nécessaires, elle peut entraîner des perturbations de la charge de travail. La réservation de ressources pour le kubelet peut affecter les ressources disponibles pour les pods, ce qui peut affecter la capacité des nœuds plus petits à gérer les charges de travail existantes. Lorsque cette nouvelle fonctionnalité est activée, les clients doivent vérifier que les nœuds plus petits peuvent toujours gérer leurs charges de travail.

    • Les pourcentages de mémoire réservée sont les suivants:
    • 255 Mio pour les machines disposant de moins de 1 Go de mémoire
    • 25 % des 4 premiers Go de mémoire
    • 20% des 4 Go suivants
    • 10% des 8 Go suivants
    • 6% des 112 Go suivants
    • 2 % de toute la mémoire au-delà de 128 Go
    • Les pourcentages d'utilisation du processeur réservé sont les suivants:
    • 6 % du premier cœur
    • 1% du cœur suivant
    • 0,5% des 2 cœurs suivants
    • 0,25 % de tous les cœurs au-delà de 4 cœurs
  • Correction de bugs

    • Activation de l'autoscaler de cluster pour équilibrer les nœuds entre différentes zones de disponibilité. Pour ce faire, utilisez l'option --balance-similar-node-groups.
  • Correctifs de sécurité

Kubernetes 1.26

1.26.14-gke.1500

Notes de version de Kubernetes OSS

  • Correction de bug:correction d'un problème qui empêchait parfois la liaison de l'émulateur IMDS (Instance Metadata Service) à une adresse IP sur le nœud. L'émulateur IMDS permet aux nœuds d'accéder en toute sécurité aux métadonnées des instances AWS EC2.

1.26.13-gke.400

Notes de version de Kubernetes OSS

1.26.12-gke.100

Notes de version de Kubernetes OSS

1.26.10-gke.600

Notes de version de Kubernetes OSS

  • Fonctionnalité: ajout de la possibilité de créer des pools de nœuds à l'aide de l'instance AWS EC2 "G5".

  • Correction de bug:mise à niveau du pilote CSI (Container Storage Interface) d'Elastic File System (EFS) aws-efs-csi-driver vers la version v1.3.8-gke.21.

  • Correction de bug:amélioration de l'ingestion des journaux dans Cloud Logging à partir de clusters Anthos sur AWS:

    • Correction d'un problème lié à l'analyse de l'horodatage.
    • Attribution du niveau de gravité approprié aux journaux d'erreurs de anthos-metadata-agent.
  • Correctifs de sécurité

1.26.9-gke.700

Notes de version de Kubernetes OSS

1.26.8-gke.200

Notes de version de Kubernetes OSS

  • Fonctionnalité:Ubuntu 22.04 utilise désormais la version de noyau linux-aws 6.2.

  • Correctifs de sécurité

1.26.7-gke.500

Notes de version de Kubernetes OSS

1.26.5-gke.1400

Notes de version de Kubernetes OSS

1.26.5-gke.1200

Notes de version de Kubernetes OSS

  • Correction de bugs
    • Configure l'autoscaler de cluster pour équilibrer le nombre de nœuds entre les zones de disponibilité à l'aide de l'option --balance-similar-node-groups.

1.26.4-gke.2200

Notes de version de Kubernetes OSS * Fonctionnalité:Ubuntu 22.04 utilise le noyau linux-aws 5.19.

  • Correction de bugs

    • Correction d'un problème qui empêchait Kubernetes d'appliquer de manière incorrecte la StorageClass par défaut aux PersistentVolumeClaims dont l'annotation était obsolète volume.beta.kubernetes.io/storage-class.
    • Correction d'un problème qui entraînait une consommation croissante de mémoire par l'agent Logging.
  • Correctifs de sécurité

    • Correction d'un problème affectant le suivi des connexions Netfilter (conntrack), qui est chargé de surveiller les connexions réseau. Ce correctif permet d'insérer correctement les nouvelles connexions dans la table conntrack et de contourner les limites causées par les modifications apportées aux versions 5.15 et ultérieures du noyau Linux.

1.26.2-gke.1001

Notes de version de Kubernetes OSS

  • Problème connu:Kubernetes 1.26.2 applique de manière incorrecte la StorageClass par défaut aux PersistentVolumeClaims qui comportent l'annotation obsolète volume.beta.kubernetes.io/storage-class.

  • Fonctionnalité:mise à jour de l'image de l'OS vers Ubuntu 22.04. cgroupv2 est désormais utilisé comme configuration de groupe de contrôle par défaut.

    • Ubuntu 22.04 utilise cgroupv2 par défaut. Nous vous recommandons de vérifier si certaines de vos applications accèdent au système de fichiers cgroup. Si c'est le cas, vous devez les mettre à jour pour utiliser cgroupv2. Voici quelques exemples d'applications pouvant nécessiter des mises à jour pour assurer la compatibilité avec cgroupv2:
    • Agents de surveillance et de sécurité tiers qui dépendent du système de fichiers cgroup.
    • Si cAdvisor est utilisé en tant que DaemonSet autonome pour surveiller les pods et les conteneurs, il doit passer à la version 0.43.0 ou ultérieure.
    • Si vous utilisez JDK, nous vous recommandons d'utiliser la version 11.0.16 ou ultérieure, ou la version 15 ou ultérieure. Ces versions sont entièrement compatibles avec cgroupv2.
    • Si vous utilisez le package uber-go/automaxprocs, assurez-vous d'utiliser la version 1.5.1 ou une version ultérieure.
    • Ubuntu 22.04 supprime le package timesyncd. À la place, chrony est désormais utilisé pour le service de synchronisation de l'heure Amazon.
    • Pour plus d'informations, consultez les notes de version d'Ubuntu.
  • Fonctionnalité:envoie des métriques pour les composants du plan de contrôle à Cloud Monitoring. Cela inclut un sous-ensemble de métriques Prometheus de kube-apiserver, etcd, kube-scheduler et kube-controller-manager. Les noms de métriques utilisent le préfixe kubernetes.io/anthos/.

  • Fonctionnalité:activation de l'envoi de métadonnées de ressources Kubernetes à Google Cloud Platform, améliorant à la fois les métriques de l'interface utilisateur et du cluster. Pour que les métadonnées soient correctement ingérées, les clients doivent activer l'API Config Monitoring for Ops. Vous pouvez activer cette API dans la console Google Cloud ou en activant manuellement l'API opsconfigmonitoring.googleapis.com dans la gcloud CLI. En outre, les clients doivent suivre les étapes décrites dans la documentation Autoriser Cloud Logging/Monitoring pour ajouter les liaisons IAM nécessaires. Le cas échéant, ajoutez opsconfigmonitoring.googleapis.com à votre liste d'autorisation de proxy.

  • Fonctionnalité: Ajout d'une fonctionnalité d'aperçu pour la création d'un pool de nœuds Spot AWS.

  • Fonctionnalité: La création de pools de nœuds à l'aide de types d'instances basés sur ARM (Graviton) est maintenant accessible à tous.

  • Fonctionnalité:activation de l'arrêt progressif des nœuds du kubelet. Les pods hors système disposent de 15 secondes pour s'arrêter, après quoi les pods système (avec les classes de priorité system-cluster-critical ou system-node-critical) ont 15 secondes pour s'arrêter normalement.

  • Fonctionnalité:la fonctionnalité de réparation automatique des nœuds est activée en mode Aperçu. Pour activer l'aperçu, veuillez contacter l'équipe chargée de votre compte.

  • Fonctionnalité: Ajout de tags à la ressource de point d'accès EFS créée dynamiquement.

  • Fonctionnalité:Les clusters disposent désormais de règles de groupe de sécurité de sous-réseau par pool de nœuds au lieu de règles à l'échelle du VPC

    • Auparavant, le plan de contrôle autorisait le trafic entrant provenant de l'ensemble de la plage d'adresses IP principale du VPC sur les ports TCP/443 et TCP/8123, qui sont utilisés par les pools de nœuds.
    • Désormais, le plan de contrôle limite le trafic entrant autorisé à chaque plage d'adresses IP des sous-réseaux de pool de nœuds sur les ports TCP/443 et TCP/8123. Plusieurs pools de nœuds peuvent partager un sous-réseau.
    • Cette modification est compatible avec les pools de nœuds s'exécutant en dehors de la plage d'adresses IP principale du VPC et améliore la sécurité du plan de contrôle.
    • Si vous utilisiez la règle de groupe de sécurité à l'échelle du VPC pour autoriser le trafic provenant de l'extérieur du cluster (par exemple, à partir d'un hôte bastion pour kubectl), vous devez créer un groupe de sécurité, y ajouter une règle à l'échelle du VPC et associer le groupe de sécurité au plan de contrôle (via le champ AwsCluster.controlPlane.securityGroupIds).
  • Correction de bugs:les clusters nouvellement créés utilisent désormais etcd v3.4.21 pour améliorer la stabilité. Les clusters existants des versions précédentes utilisaient déjà etcd v3.5.x et ne seront pas rétrogradés vers la version 3.4.21 lors de la mise à niveau du cluster. Ces clusters utiliseront à la place la version 3.5.6.

  • Correctif de sécurité:définissez la limite de saut de la réponse de l'émulateur IMDS sur 1. Cela permet de sécuriser la communication des données IMDS entre l'émulateur et une charge de travail.

Périodes d'assistance pour les versions

Les dates de sortie et de fin de compatibilité des versions compatibles de Kubernetes sont indiquées sur la page Durée de vie des versions de GKE sur AWS.