Mettre à jour ou migrer un cluster vers un cluster avancé

Vous pouvez convertir un cluster de version 1.32 en cluster avancé en le mettant à jour sur place vers la version 1.32 ou en le mettant à niveau vers la version 1.33. La conversion vers un cluster avancé prépare votre environnement pour la version 1.33 et les versions ultérieures, où les clusters avancés constituent l'architecture par défaut ou requise.

Principales différences après le passage aux clusters avancés

La mise à niveau ou la mise à jour de votre cluster vers un cluster avancé introduit plusieurs différences clés par rapport aux clusters standards. Voici les principaux changements apportés aux clusters avancés :

  • Emplacement des ressources : les ressources de cluster et de machine ne se trouvent plus dans les clusters d'utilisateur. Ces ressources se trouvent exclusivement dans le cluster d'administrateur.

  • NodeExternalIP : NodeExternalIP n'est pas défini sur les nœuds.

  • Installation de cert-manager : cert-manager est automatiquement installé sur les clusters avancés. Si vous avez installé cert-manager dans votre cluster, la mise à jour ou la mise à niveau vers un cluster avancé l'écrase avec la version du cluster avancé.

Différences de fonctionnalités entre les clusters avancés et non avancés

Lorsque vous activez les clusters avancés, certaines fonctionnalités ne fonctionnent pas de la même manière que dans les clusters non avancés. Certaines de ces modifications ne s'appliquent qu'à la version preview des clusters avancés dans la version 1.31. Les différences sont indiquées tout au long de la documentation.

Le tableau suivant liste les fonctionnalités compatibles avec Google Distributed Cloud (logiciel uniquement) pour VMware, leur état de disponibilité lorsque les clusters avancés sont activés, ainsi que les différences de comportement ou d'utilisation :

Fonctionnalité Clusters avancés 1.31 (preview) 1.32 Désactivée Clusters avancés 1.32 (DG) 1.33 Clusters avancés (DG) Différences
Clusters avancés Aperçu DG DG DG Non compatible
Domaines de topologie Aperçu Aperçu Aperçu Les modifications s'appliquent. Pour en savoir plus, consultez Configurer des domaines de topologie et les références de configuration de cluster associées.
Adhésion au parc régional DG DG DG DG Aucune différence.
Asymétrie de version n+2 entre le cluster d'administrateur et le cluster d'utilisateur DG DG DG Non recommandé : la gestion d'un cluster d'utilisateur en version preview de version inférieure n'est pas possible. N'utilisez donc pas cette fonctionnalité.
Pool de nœuds n+2 avec décalage de version – cluster d'utilisateur DG DG DG Non recommandé : la gestion d'un cluster d'utilisateur en version preview de version inférieure n'est pas possible. N'utilisez donc pas cette fonctionnalité.
Paramètre de surutilisation maximale pour les mises à jour de pools de nœuds Aperçu Aperçu Aperçu Aperçu Aucune différence.
cgroup v2 pour les nœuds DG DG DG DG Aucune différence.
Mode DSR pour Dataplane V2 DG DG DG DG Aucune différence.
Autorisation binaire pour les clusters d'utilisateur Controlplane V2 DG DG DG DG Aucune différence.
Poste de travail administrateur géré par l'utilisateur DG DG DG DG Aucune différence.
Outil de migration CSI StatefulSet DG DG DG DG Aucune différence.
Migration de Seesaw vers MetalLB DG DG DG DG Aucune différence.
Désactiver l'entrée groupée DG DG DG DG Aucune différence.
Préparation des identifiants pour le cluster d'administrateur DG DG DG Aucune différence.
Règles de stockage pour un cluster d'utilisateur DG DG DG DG Aucune différence.
Règles de stockage pour un cluster d'administrateur DG DG DG DG Aucune différence.
Réparation automatique des nœuds DG DG DG DG Modifications appliquées : si le cluster avancé est activé, les vérifications d'état périodiques ne sont pas exécutées dans le cadre de la réparation automatique. Pour en savoir plus et connaître les autres différences, consultez Réparation automatique des nœuds et vérification de l'état.
Cluster d'administrateur haute disponibilité DG DG DG DG Aucune différence.
Affinité d'hôte de VM DG DG DG Compatible avec les clusters avancés dans les versions 1.32.200 et 1.33 et ultérieures. Lorsque vous utilisez des domaines de topologie, configurez des groupes d'hôtes dans topologyDomains[i].compute.hostGroups dans le fichier de configuration de l'infrastructure vSphere au lieu de nodePools[i].vsphere.hostgroups dans le fichier de configuration du cluster d'utilisateur.
Générer des fichiers de configuration à partir d'un cluster existant DG DG DG DG Les modifications s'appliquent. Les clusters qui utilisent des domaines de topologie ne sont pas compatibles.
Collecte des métriques système de Google Cloud Managed Service pour Prometheus DG DG DG DG Aucune différence.
Mise à niveau et rollback des pools de nœuds DG DG DG Aucune différence.
Mettre à jour les identifiants d'un registre privé GA DG DG DG Aucune différence.
Sauvegarde et restauration des clusters d'administrateur avec gkectl Aperçu Aperçu DG Les modifications s'appliquent. Mise à jour de la commande gkectl pour améliorer la restauration des clusters d'administrateur et permettre la sauvegarde et la restauration des clusters d'utilisateur. Pour en savoir plus, consultez Sauvegarder et restaurer des clusters avancés avec gkectl.
Autoscaling des pools de nœuds du cluster d'utilisateur DG DG DG DG Aucune différence.
Redimensionnement automatique des nœuds de cluster GA DG Aucune différence.
Compatibilité avec plusieurs clusters vSphere GA DG DG DG Aucune différence.
Compatibilité avec plusieurs centres de données vSphere GA DG DG DG Aucune différence.
Compatibilité avec OIDC (OpenID Connect) pour l'authentification auprès des clusters DG DG DG DG Aucune différence.
Rotation des certificats CA DG DG DG Aucune différence.
Compatibilité avec la fédération d'identité de charge de travail DG DG DG DG Aucune différence.
Compatibilité de GKE Identity Service avec l'authentification LDAP DG DG DG DG Aucune différence.
Chiffrement des secrets toujours activé sans module de sécurité matériel (HSM) DG DG DG Aucune différence.
Mise à jour des certificats CA vCenter avec gkectl DG DG DG DG Aucune différence.
Passerelle NAT de sortie DG DG DG DG Aucune différence.
Enregistrement du parc du cluster d'administrateur GA DG DG DG Aucune différence.
Compatibilité avec le pool de nœuds Windows DG Non compatible
Environnement d'exécution containerd pour le pool de nœuds Windows DG Non compatible
Compatibilité avec les pools de nœuds Container-Optimized OS DG DG DG Aucune différence.
CoreDNS en tant que fournisseur DNS du cluster DG DG DG DG Aucune différence.
Cycle de vie du cluster d'utilisateur dans la console Google Cloud DG Compatibilité partielle DG Les modifications s'appliquent. Pour en savoir plus, consultez Limites des clusters avancés.
Création de nœuds de cluster d'administrateur avec Container-Optimized OS DG DG DG Aucune différence.
Capacité de cartes d'interface réseau multiples pour les pods DG DG DG DG Aucune différence.
Option d'équilibreur de charge MetalLB DG DG DG DG Les modifications s'appliquent. Pour en savoir plus, consultez Équilibrage de charge groupé avec MetalLB.
Compatibilité avec gkectl update admin pour l'activation et la désactivation de Cloud Logging et Cloud Monitoring DG DG DG DG Aucune différence.
Compatibilité avec Windows Dataplane V2 DG Non compatible
Métriques récapitulatives de l'API DG DG DG DG Aucune différence.
Compatibilité avec gkectl update credentials pour la mise à jour de la clé de compte de service de l'accès aux composants Compatibilité partielle DG Compatibilité partielle Compatibilité partielle Les modifications s'appliquent. Pour en savoir plus sur ce qui est ou n'est pas compatible avec la mise à jour des identifiants pour les clusters avancés, consultez Différences entre les clusters avancés pour la rotation des clés de compte de service.
Préparation des identifiants pour le cluster d'utilisateur GA DG DG Aucune différence.
Mise à niveau de simulation du cluster d'utilisateur GA DG DG DG Aucune différence.
Mise à niveau asynchrone du cluster d'utilisateur GA DG DG DG Aucune différence.
Mise à niveau de simulation du cluster d'administrateur DG DG Aucune différence.
Mise à niveau asynchrone du cluster d'administrateur GA DG DG DG Aucune différence.
Mise à jour séquentielle des pools de nœuds GA DG DG Aucune différence.
Créer un instantané de volume avec le pilote CSI vSphere Aperçu Aperçu Aperçu Aperçu Aucune différence.
Créer un cluster d'utilisateur avec ControlPlane V2 activé GA DG DG DG Aucune différence.
Migration de stockage avec SPBM DG DG DG DG Aucune différence.
Migrer un datastore vers une SPBM DG DG DG DG Aucune différence.
Migrer un cluster d'utilisateur vers Controlplane V2 DG DG DG DG Aucune différence.
Migrer vers un cluster d'administrateur HD DG DG DG DG Aucune différence.
Migrer les paramètres de configuration de F5 BIG-IP DG DG DG DG Aucune différence.
Équilibreur de charge Compatibilité partielle DG DG DG Les modifications s'appliquent. Pour en savoir plus, consultez la documentation de référence sur la configuration de l'équilibreur de charge et du cluster concernés.
Vérifications préliminaires Compatibilité partielle DG DG DG Aucune différence.
Configuration matérielle requise DG DG DG DG Les modifications s'appliquent. Pour en savoir plus, consultez Exigences concernant le processeur, la RAM et l'espace de stockage.
Instantané DG DG DG DG Aucune différence.
Registre privé DG DG DG DG Les modifications s'appliquent. Pour en savoir plus sur l'utilisation d'un registre privé sur un cluster avancé, consultez Limites des clusters avancés et du bundle complet.
IPAM, DNS, NTP et plusieurs cartes d'interface réseau DG DG DG DG Aucune différence.
Création/mise à niveau/suppression de clusters DG DG DG DG Les modifications s'appliquent. Pour en savoir plus, consultez la documentation sur les opérations de cluster concernées et les limites avancées des clusters.
Proxy DG DG DG DG Aucune différence.
Règle de mise à jour du pool de nœuds DG DG DG Aucune différence.
Diagnostiquer DG DG DG Les modifications s'appliquent. Les vérifications liées à vCenter ne sont pas disponibles pour les clusters avancés. Comme il n'y a plus de contrôleur onprem-user-cluster-controller, le guide Diagnostiquer les problèmes de cluster est obsolète pour les clusters avancés. Pour les clusters avancés de la version 1.32, la commande gkectl diagnose cluster exécute des vérifications d'état pour le cluster spécifié.
Tags vSphere et suivi des VM DG DG Aucune différence.
Groupe d'hôtes vSphere DG DG Aucune différence.
Journalisation et surveillance DG DG DG DG Aucune différence.
Groupes d'anti-affinité DG DG DG Aucune différence.
Plan de contrôle du cluster d'utilisateur sans HA DG Non compatible
gkectl check-config DG DG DG Les modifications s'appliquent. La compatibilité de la commande avec les clusters d'utilisateur avancés a été ajoutée dans les versions suivantes : 1.32.700+, 1.33.300+ et 1.34.0 et versions ultérieures.

Prérequis

  • La version de gkectl doit être identique à la version du cluster cible.

  • Diagnostiquez toujours votre cluster avant de le mettre à jour ou de le mettre à niveau vers un cluster avancé :

    • Exécutez gkectl diagnose cluster sur vos clusters d'administrateur et d'utilisateur pour vous assurer qu'ils sont opérationnels.
    • Si la commande signale des erreurs ou des avertissements, corrigez-les avant de lancer la mise à jour ou la mise à niveau vers un cluster avancé.
  • Assurez-vous que vos clusters n'utilisent que les fonctionnalités recommandées.

  • Avant de lancer la mise à jour ou la mise à niveau, vérifiez que vos clusters n'utilisent aucune fonctionnalité non compatible avec les clusters avancés. Si des fonctionnalités non compatibles sont actives, désactivez-les d'abord à l'aide de la commande update.

    • Bien que les clusters d'utilisateur à haute disponibilité soient requis sur les clusters avancés, vous pouvez toujours mettre à jour ou mettre à niveau un cluster d'utilisateur standard vers un cluster avancé à haute disponibilité en suivant ce guide.
  • Vous devez mettre à jour ou mettre à niveau le cluster d'administrateur vers un cluster avancé avant de mettre à jour ou de mettre à niveau des clusters d'utilisateur.

  • À propos de l'installation de cert-manager : cert-manager est automatiquement installé sur les clusters avancés. Lorsque vous migrez d'un cluster non avancé vers un cluster avancé, le cert-manager intégré remplace automatiquement toutes les versions de cert-manager installées par le client. Avant de mettre à jour ou de passer à des clusters avancés, assurez-vous qu'aucune configuration ou fonctionnalité personnalisée critique n'est appliquée à votre cert-manager existant.

Mettre à jour ou mettre à niveau le cluster d'administrateur vers un cluster avancé

Mettre à jour

  1. Diagnostiquez votre cluster pour vous assurer qu'il est opérationnel :

    gkectl diagnose cluster \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    
  2. Préparez le cluster avancé :

    gkectl prepare \
        --bundle-path BUNDLE_PATH \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --advanced-cluster
    

    Remplacez les éléments suivants :

    • BUNDLE_PATH : chemin d'accès au fichier de bundle. Ce fichier se trouve sur votre poste de travail administrateur dans /var/lib/gke/bundles/. Exemple :

      /var/lib/gke/bundles/gke-onprem-vsphere-1.32.0-gke.1085-full.tgz
      
    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur

  3. Dans le fichier de configuration du cluster d'administrateur, définissez enableAdvancedCluster sur true.

  4. Mettez à jour le cluster d'administrateur vers le cluster avancé :

    gkectl update admin \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --config ADMIN_CLUSTER_CONFIG
    

    Remplacez les éléments suivants :

    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur
    • ADMIN_CLUSTER_CONFIG : chemin d'accès au fichier de configuration du cluster d'administrateur

    La commande recrée tous les nœuds du cluster d'administrateur.

Mettre à niveau

  1. Mettez à niveau votre poste de travail administrateur si nécessaire.

  2. Diagnostiquez votre cluster pour vous assurer qu'il est opérationnel :

    gkectl diagnose cluster \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    
  3. Préparez le cluster avancé :

    gkectl prepare \
        --bundle-path BUNDLE_PATH \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --advanced-cluster
    

    Remplacez les éléments suivants :

    • BUNDLE_PATH : chemin d'accès au fichier de bundle. Ce fichier se trouve sur votre poste de travail administrateur dans /var/lib/gke/bundles/. Exemple :

      /var/lib/gke/bundles/gke-onprem-vsphere-1.32.0-gke.1085-full.tgz
      
    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur

  4. Dans le fichier de configuration du cluster d'administrateur, définissez enableAdvancedCluster sur true.

  5. Assurez-vous que le champ bundlepath du fichier de configuration du cluster d'administrateur correspond au chemin du bundle vers lequel vous souhaitez effectuer la mise à niveau.

  6. Mettez à niveau le cluster d'administrateur vers le cluster avancé :

    gkectl upgrade admin \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --config ADMIN_CLUSTER_CONFIG
    

    Remplacez les éléments suivants :

    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur
    • ADMIN_CLUSTER_CONFIG : chemin d'accès au fichier de configuration du cluster d'administrateur

    La commande va déployer et recréer tous les nœuds du cluster d'administrateur. Avec la stratégie de déploiement de recréation de déploiement, les nœuds sont mis à niveau un par un. Lors de la mise à niveau du nœud, la VM est supprimée, puis recréée avec la nouvelle version.

Une fois que le cluster d'administrateur a été mis à jour ou mis à niveau vers un cluster avancé :

  • Vos clusters d'utilisateur non avancés existants continuent de fonctionner normalement.

  • Vous ne pouvez créer que des clusters d'utilisateur avancés gérés par le cluster d'administrateur avancé.

Mettez à niveau tous les clusters d'utilisateur vers des clusters avancés peu de temps après pour maintenir un environnement cohérent et complet.

Mettre à jour ou mettre à niveau le cluster d'utilisateur vers un cluster avancé

Mettre à jour

  1. Diagnostiquez votre cluster pour vous assurer qu'il est opérationnel :

    gkectl diagnose cluster \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --cluster-name USER_CLUSTER_NAME
    
  2. Si le plan de contrôle de votre cluster d'utilisateur n'est pas disponibilité élevée :

    1. Remplacez masterNode.replicas par 3 au lieu de 1.

    2. Ajoutez les adresses IP statiques des nœuds du plan de contrôle du cluster d'utilisateur à la section network.controlPlaneIPBlock.ips.

  3. Préparez le cluster avancé :

    gkectl prepare \
        --bundle-path BUNDLE_PATH \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --advanced-cluster
    

    Remplacez les éléments suivants :

    • BUNDLE_PATH : chemin d'accès au fichier de bundle. Ce fichier se trouve sur votre poste de travail administrateur dans /var/lib/gke/bundles/. Exemple :

      /var/lib/gke/bundles/gke-onprem-vsphere-1.32.0-gke.1085-full.tgz
      
    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur

  4. Définissez enableAdvancedCluster sur true dans le fichier de configuration de votre cluster d'utilisateur.

  5. Mettez à jour le cluster d'utilisateur vers le cluster avancé :

    gkectl update cluster \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --config USER_CLUSTER_CONFIG
    

    Remplacez les éléments suivants :

    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur
    • USER_CLUSTER_CONFIG : chemin d'accès au fichier de configuration du cluster d'utilisateur

    La commande va déployer et recréer tous les nœuds du cluster d'utilisateur. Avec la stratégie de déploiement "Rollout Recreate", les nœuds sont mis à jour un par un. Lors de la mise à jour du nœud, la VM est supprimée, puis recréée avec la nouvelle configuration.

Mettre à niveau

  1. Diagnostiquez votre cluster pour vous assurer qu'il est opérationnel :

    gkectl diagnose cluster \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --cluster-name USER_CLUSTER_NAME
    
  2. Si le plan de contrôle de votre cluster d'utilisateur n'est pas disponibilité élevée :

    1. Remplacez masterNode.replicas par 3 au lieu de 1.

    2. Ajoutez les adresses IP statiques des nœuds du plan de contrôle du cluster d'utilisateur à la section network.controlPlaneIPBlock.ips.

  3. Préparez le cluster avancé :

    gkectl prepare \
        --bundle-path BUNDLE_PATH \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --advanced-cluster
    

    Remplacez les éléments suivants :

    • BUNDLE_PATH : chemin d'accès au fichier de bundle. Ce fichier se trouve sur votre poste de travail administrateur dans /var/lib/gke/bundles/. Exemple :

      /var/lib/gke/bundles/gke-onprem-vsphere-1.32.0-gke.1085-full.tgz
      
    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur

  4. Définissez enableAdvancedCluster sur true dans le fichier de configuration de votre cluster d'utilisateur.

  5. Assurez-vous que le champ gkeOnPremVersion du fichier de configuration du cluster d'utilisateur correspond à la version cible de votre mise à niveau.

  6. Mettez à niveau le cluster d'utilisateur vers le cluster avancé :

    gkectl upgrade cluster \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --config USER_CLUSTER_CONFIG
    

    Remplacez les éléments suivants :

    • ADMIN_CLUSTER_KUBECONFIG : chemin d'accès au fichier kubeconfig du cluster d'administrateur
    • USER_CLUSTER_CONFIG : chemin d'accès au fichier de configuration du cluster d'utilisateur

    La commande recrée tous les nœuds du cluster d'utilisateur.

cert-manager inclus avec les clusters avancés

cert-manager est un composant obligatoire géré par le système dans les clusters avancés.

Si vous utilisez cert-manager sans clusters avancés, vérifiez les points suivants avant de passer aux clusters avancés :

  • Votre cert-manager ne contient aucune configuration personnalisée ni aucun flag de fonctionnalité.
  • Votre version de cert-manager est identique à la version groupée ou correspond à la version précédente.

Compatibilité avec Apigee Hybrid

Le cert-manager groupé est entièrement compatible avec les charges de travail Apigee hybrid. Lorsque vous passez à un cluster avancé, le programme d'installation peut vous avertir que l'installation cert-manager existante sera remplacée. Ce comportement est normal et le système le gère automatiquement.

Pour faciliter la transition de vos charges de travail Apigee :

  • Ne désinstallez pas manuellement votre cert-manager existant avant la mise à niveau.
  • Annuler les personnalisations : si vous gérez cert-manager à l'aide de GitOps ou si vous avez appliqué des configurations personnalisées au déploiement cert-manager, vous devez annuler ces personnalisations ou suspendre la synchronisation avant la mise à niveau pour éviter les écarts de configuration et les éventuelles pauses de mise à niveau.

Fonctionnalités et limites

Vous pouvez effectuer les opérations suivantes avec le cert-manager groupé :

  • Créer et modifier des ressources Issuer et ClusterIssuer.
  • Créez et modifiez des ressources de certificat qui font référence à des émetteurs et à des types d'émetteurs standards.
  • Créer et modifier les ressources Kubernetes standards utilisées par cert-manager.
  • Créez des secrets Kubernetes contenant des clés API et référencez-les dans vos émetteurs.
  • Configurez vos émetteurs pour qu'ils utilisent des résolveurs HTTP-01 ou DNS-01 spécifiques.

Vous ne pouvez pas personnaliser les éléments suivants dans le cert-manager groupé :

  • Définissez les valeurs deployment ou helm.
  • Ajoutez des arguments ou des options de ligne de commande au binaire cert-manager.
  • Modifiez les limites de ressources ou les sélecteurs de nœuds pour les pods cert-manager.
  • Modifiez la logique d'installation du logiciel cert-manager.
  • Activez les fonctionnalités expérimentales.
  • Forcer les pods du plan de contrôle cert-manager à s'exécuter sur des nœuds d'infrastructure spécifiques.

Si vous avez des contraintes spécifiques qui vous empêchent d'utiliser le cert-manager groupé, contactez l'assistanceGoogle Cloud pour obtenir de l'aide sur les options de configuration avancées.

Versions groupées

Le tableau suivant liste les versions de cert-manager incluses pour chaque version de Google Distributed Cloud (logiciel uniquement) pour VMware.

Google Distributed Cloud (logiciel uniquement) pour VMware Version cert-manager groupée
1,32 1.17
1.33 1.18
1,34 1.19