vSphere with Tanzu prend en charge les mises à jour continues pour les clusters Superviseurs et Tanzu Kubernetes Grid, ainsi que pour l'infrastructure prenant en charge ces clusters.
Mise à jour des clusters Superviseurs et Tanzu Kubernetes Grid
vSphere with Tanzu utilise un modèle de mise à jour continue pour les clusters Superviseurs et Tanzu Kubernetes Grid. Le modèle de mise à jour continue garantit une interruption de service minimale pour les charges de travail du cluster pendant le processus de mise à jour. Les mises à jour continues incluent la mise à niveau des versions du logiciel Kubernetes, ainsi que de l'infrastructure et des services prenant en charge les clusters Kubernetes, comme les configurations et les ressources de machine virtuelle, Espaces de noms vSphere, ainsi que les ressources personnalisées.
Dépendance entre les mises à jour du Superviseur et les mises à jour du cluster Tanzu Kubernetes Grid
Vous mettez à jour le Superviseur et les clusters Tanzu Kubernetes Grid séparément. Notez toutefois qu'il y a des dépendances entre les deux.
La mise à jour d'un Superviseur déclenchera probablement une mise à jour continue des clusters Tanzu Kubernetes Grid déployés. Reportez-vous à la section Mettre à jour le Superviseur en effectuant une mise à jour des Espaces de noms vSphere.
Vous devrez peut-être mettre à jour un ou plusieurs clusters Tanzu Kubernetes Grid avant de mettre à jour un Superviseur si le cluster Tanzu Kubernetes Grid n'est pas conforme à la version du Superviseur cible. Reportez-vous à la section Vérifier la compatibilité du cluster Tanzu Kubernetes Grid pour la mise à niveau du Superviseur.
À propos des mises à jour du Superviseur
Lorsque vous lancez une mise à jour pour un Superviseur, le système crée une VM de plan de contrôle et l'associe au plan de contrôle du Superviseur existant. Pendant cette phase de la mise à jour, l'inventaire vSphere affiche quatre machines virtuelles de plan de contrôle lorsque le système ajoute une nouvelle machine virtuelle mise à jour, puis supprime l'ancienne machine virtuelle obsolète. Les objets sont migrés de l'une des anciennes machines virtuelles de plan de contrôle vers la nouvelle, et l'ancienne machine virtuelle de plan de contrôle est ensuite supprimée. Ce processus se répète pour chaque machine virtuelle, jusqu'à ce que toutes les machines virtuelles du plan de contrôle soient mises à jour. Une fois que toutes les machines virtuelles du plan de contrôle sont mises à jour, les nœuds worker sont mis à jour selon un modèle de mise à jour continue similaire. Les nœuds worker sont les hôtes ESXi et chaque processus Spherelet sur chaque hôte ESXi est mis à jour successivement.
- Mettez à jour les Espaces de noms vSphere.
- Mettez tout à jour, y compris les versions de VMware et les versions de Kubernetes.
Mise à jour des Espaces de noms vSphere.
- Mettez à niveau vCenter Server.
- Effectuez une mise à jour des Espaces de noms vSphere (y compris la mise à niveau de Kubernetes).
Pour effectuer une mise à jour des Espaces de noms vSphere, reportez-vous à la section Mettre à jour le Superviseur en effectuant une mise à jour des Espaces de noms vSphere.
Mise à jour de tous les composants vSphere with Tanzu
Utilisez le workflow de mise à jour complète pour mettre à jour tous les composants vSphere with Tanzu. Ce type de mise à jour est requis lorsque vous mettez à jour des versions majeures, par exemple de NSX-T 3.X vers la version 4 et de vSphere 7.x vers la version 8.
- Vérifiez la matrice d'interopérabilité de VMware https://interopmatrix.vmware.com/Interoperability pour vCenter Server et NSX afin de déterminer la compatibilité. La fonctionnalité vSphere with Tanzu est mise en œuvre par le logiciel de plan de contrôle de la charge de travail (WCP) fourni avec vCenter Server.
- Mettez à niveau NSX, s'il est compatible.
- Mettez à niveau vCenter Server.
- Mettez à niveau vSphere Distributed Switch.
- Mettez à niveau les hôtes ESXi.
- Vérifiez la compatibilité des clusters Tanzu Kubernetes Grid provisionnés avec la version du Superviseur cible.
- Mettez à jour Espaces de noms vSphere (y compris la version du Superviseur Kubernetes).
- Mettez à jour les clusters Tanzu Kubernetes Grid.
À propos des mises à jour du cluster Tanzu Kubernetes Grid
Lorsque vous mettez à jour un Superviseur, les composants d'infrastructure prenant en charge les clusters Tanzu Kubernetes Grid déployés sur ce Superviseur, comme Tanzu Kubernetes Grid 2.0, sont également mis à jour. Chaque mise à jour de l'infrastructure peut inclure des mises à jour pour les services prenant en charge Tanzu Kubernetes Grid 2.0 (CNI, CSI, CPI) et des paramètres de configuration mis à jour pour le plan de contrôle et les nœuds worker qui peuvent être appliqués aux clusters Tanzu Kubernetes Grid existants. Pour vous assurer que votre configuration répond aux exigences de compatibilité, vSphere with Tanzu effectue des vérifications préalables lors de la mise à jour continue et garantit la conformité.
Pour effectuer une mise à jour continue d'un cluster Tanzu Kubernetes Grid, mettez à jour le manifeste du cluster. Reportez-vous à la section Mise à jour des clusters TKG 2 sur le superviseur. Cependant, lorsqu'une mise à jour des Espaces de noms vSphere est effectuée, le système propage immédiatement les configurations mises à jour vers tous les clusters Tanzu Kubernetes Grid. Ces mises à jour peuvent déclencher automatiquement une mise à jour continue du plan de contrôle Tanzu Kubernetes Grid et des nœuds worker.
Le processus de mise à jour continue pour le remplacement des nœuds de cluster est semblable à la mise à jour continue des espaces dans un déploiement Kubernetes. Deux contrôleurs distincts sont responsables de l'exécution d'une mise à jour continue des clusters Tanzu Kubernetes Grid : le contrôleur Modules complémentaires et le contrôleur TanzuKubernetesCluster. Au sein de ces deux contrôleurs, il existe trois étapes clés pour une mise à jour continue : la mise à jour des modules complémentaires, la mise à jour du plan de contrôle et la mise à jour des nœuds worker. Ces étapes sont effectuées dans l'ordre, avec des vérifications préalables qui empêchent le début d'une étape tant que l'étape précédente n'a pas suffisamment progressé. Ces étapes peuvent être ignorées si elles sont jugées inutiles. Par exemple, une mise à jour peut affecter uniquement les nœuds worker et n'exige donc pas de mise à jour du module complémentaire ou du plan de contrôle.
Pendant le processus de mise à jour, le système ajoute un nouveau nœud de cluster et attend que le nœud soit mis en ligne avec la version cible de Kubernetes. Le système marque ensuite l'ancien nœud pour être supprimé, passe au nœud suivant et répète le processus. L'ancien nœud n'est pas supprimé tant que tous les espaces ne sont pas supprimés. Par exemple, si un espace est défini avec des PodDisruptionBudgets qui empêchent l'épuisement complet d'un nœud, le nœud est détaché mais n'est pas supprimé tant que ces espaces ne peuvent pas être supprimés. Le système met d'abord à niveau tous les nœuds de plan de contrôle, puis les nœuds worker. Lors d'une mise à jour, l'état du cluster Tanzu Kubernetes Grid passe à « Mise à jour ». Une fois le processus de mise à jour continue terminé, l'état du cluster Tanzu Kubernetes Grid passe à « En cours d'exécution ».
Les espaces s'exécutant sur un cluster Tanzu Kubernetes Grid qui ne sont pas régis par un contrôleur de réplication seront supprimés pendant la mise à niveau de la version de Kubernetes dans le cadre du drainage du nœud worker lors de la mise à jour du cluster Tanzu Kubernetes Grid. Cela est vrai si la mise à jour du cluster est déclenchée manuellement ou automatiquement par une mise à jour des Espaces de noms vSphere. Les espaces non régis par un contrôleur de réplication comprennent les espaces qui ne sont pas créés dans le cadre d'une spécification de déploiement ou de ReplicaSet. Pour plus d'informations, reportez-vous à la rubrique Cycle de vie de l'espace : durée de vie de l'espace dans la documentation Kubernetes.