La rubrique ci-dessous définit les termes et concepts clés d'un déploiement Tanzu Kubernetes Grid (TKG). D'autres rubriques de cette section fournissent des références pour les éléments TKG clés et décrivent les fonctionnalités expérimentales de TKG.
Tanzu Kubernetes Grid (TKG) est une infrastructure multicloud de haut niveau pour Kubernetes. Tanzu Kubernetes Grid vous permet de mettre Kubernetes à la disposition des développeurs en tant qu'utilitaire, tout comme un réseau électrique. Les opérateurs peuvent utiliser cette grille pour créer et gérer des clusters Kubernetes pour héberger des applications en conteneur, et les développeurs peuvent l'utiliser pour développer, déployer et gérer les applications. Pour plus d'informations, reportez-vous à la section Présentation de Tanzu Kubernetes Grid.
Un cluster de gestion est un cluster Kubernetes qui déploie et gère d'autres clusters Kubernetes, appelés clusters de charge de travail, qui hébergent des applications en conteneur.
Pour plus d'informations sur les clusters de gestion, reportez-vous à la section Clusters de gestion : superviseurs et autonomes.
Les clusters de charge de travail déployés par Tanzu Kubernetes Grid sont des clusters Kubernetes conformes à la norme CNCF dans lesquels des applications conteneurisées et des services en module sont déployés et exécutés.
Les clusters de charge de travail sont déployés par le cluster de gestion et s'exécutent sur la même infrastructure de cloud privé ou public.
Vous pouvez disposer de nombreux clusters de charge de travail et, pour répondre aux besoins des applications qu'ils hébergent, les clusters de charge de travail peuvent exécuter différentes versions de Kubernetes et disposer de différentes topologies qui incluent des types de nœuds et des nombres de nœuds personnalisables, différents systèmes d'exploitation, processeurs et dispositifs de stockage, ainsi que d'autres paramètres et configurations de ressources.
Pour la mise en réseau espace à espace, les clusters de charge de travail utilisent Antrea par défaut, et peuvent également utiliser Calico.
Pour plus d'informations sur les différents types de clusters de charge de travail, reportez-vous à la section Clusters de charge de travail.
Une instance de Tanzu Kubernetes Grid est un déploiement complet de Tanzu Kubernetes Grid, notamment le cluster de gestion, les clusters de charge de travail déployés et les services en module qu'ils exécutent. Vous pouvez utiliser de nombreuses instances de Tanzu Kubernetes Grid, pour différents environnements, tels que la production, la préparation, le transfert et le test ; pour différents fournisseurs IaaS, tels que vSphere, Azure et AWS ; et pour différents domaines de pannes, par exemple Datacenter-1
, AWS us-east-2
ou AWS us-west-2
.
La CLI Tanzu active les commandes tanzu
qui déploient et utilisent TKG. Par exemple :
tanzu cluster
communiquent avec un cluster de gestion TKG pour créer et gérer des clusters de charge de travail qui hébergent des charges de travail en conteneur.tanzu package
installent et gèrent les services packagés utilisés par les charges de travail hébergées.tanzu apps
gèrent les charges de travail hébergées via Tanzu Application Platform s'exécutant sur des clusters de charge de travail.tanzu management-cluster
(ou tanzu mc
) déploient TKG en créant un cluster de gestion autonome sur une infrastructure cible, puis gèrent le déploiement une fois le cluster de gestion autonome en cours d'exécution.La CLI Tanzu utilise des plug-ins pour modulariser et étendre ses capacités.
Dans un cluster de gestion autonome, la version de Kubernetes que le cluster de gestion exécute est la même que la version de Kubernetes utilisée par la CLI Tanzu.
Pour plus d'informations, reportez-vous à la section Architecture et configuration de la CLI Tanzu.
La machine de démarrage est un ordinateur portable, un hôte ou un serveur sur lequel vous téléchargez et exécutez la CLI Tanzu.
Lorsque vous utilisez la CLI Tanzu pour déployer un cluster de gestion, il crée le cluster de gestion en tant que cluster kind
sur la machine de démarrage avant de le déployer sur l'infrastructure cible.
La manière dont vous connectez la CLI Tanzu à un cluster de gestion existant dépend de son option de déploiement :
Une machine de démarrage peut être un ordinateur portable local, une jumpbox ou toute autre machine physique ou virtuelle.
Pour s'exécuter en toute sécurité et efficacement, les applications Kubernetes doivent généralement être hébergées sur des nœuds avec des versions de correctifs spécifiques de Kubernetes et un système d'exploitation de base, ainsi que des versions compatibles d'autres composants. Ces versions de composants changent dans le temps.
Pour faciliter l'actualisation, la sécurité et la compatibilité, VMware publie des versions de Tanzu Kubernetes (TKR) qui intègrent des versions de correctifs de Kubernetes avec des versions de système d'exploitation de base qu'il peut exécuter, ainsi que d'autres composants versionnés qui prennent en charge cette version de Kubernetes et les charges de travail qu'il héberge.
Le cluster de gestion utilise des TKR pour créer des clusters de charge de travail qui exécutent les versions de Kubernetes et de système d'exploitation souhaitées.
Chaque TKR contient tout ce dont une version de correctif spécifique de Kubernetes a besoin pour s'exécuter sur différents types de machines virtuelles sur différentes infrastructures de cloud.
Pour plus d'informations, reportez-vous à la section Versions de Tanzu Kubernetes et images de nœuds personnalisées.
Pour fournir aux charges de travail hébergées des services tels que l'authentification, le contrôle d'entrée, le registre de conteneur, l'observabilité, la détection de services et la journalisation, vous pouvez installer des services Tanzu en module ou des modules sur des clusters TKG.
Comme alternative à l'exécution d'instances distinctes du même service dans plusieurs clusters de charge de travail, TKG avec un cluster de gestion autonome prend en charge l'installation de certains services sur un cluster de services partagés, un cluster de charge de travail spécial qui peut publier ses services sur d'autres clusters de charge de travail.
Les services en module Tanzu sont fournis avec l'outil Carvel imgpkg et testés pour TKG par VMware.
Ces modules peuvent inclure :
Pour plus d'informations sur le téléchargement et l'installation de imgpkg
, reportez-vous à la section Installer les outils Carvel.
Dans Tanzu Kubernetes Grid v1.x et dans les clusters hérités basés sur TKC pris en charge par TKG 2.x, un plan de cluster est une configuration normalisée pour les clusters de charge de travail. Le plan configure les paramètres suivants : nombre de nœuds de plan de contrôle, nombre de nœuds worker, nombre de types de machines virtuelles, etc.
TKG v1.x fournit deux plans par défaut : Les clusters dev
ont un nœud de plan de contrôle et un nœud worker, et les clusters prod
ont trois nœuds de plan de contrôle et trois nœuds worker.
TKG 2.x prend en charge une configuration plus précise de la topologie des clusters, comme décrit dans la section Configurer un cluster de charge de travail basé sur une classe.
ytt
Les paramètres de configuration des clusters et des plans TKG proviennent de sources open source en amont, telles que le projet d'API de cluster et ses projets de fournisseurs spécifiques à IaaS. Ces sources publient des spécifications d'objet Kubernetes dans YAML, avec des paramètres préconfigurés.
TKG prend en charge les superpositions Carvel ytt pour personnaliser des objets pour votre propre installation de manière non destructrice en conservant les spécifications YAML d'origine. Cela est utile lorsque les fichiers de personnalisation YAML résident sur la machine de démarrage et que leur modification directe détruirait la copie locale des configurations en amont d'origine.
L'installation des plug-ins de TKG permet d'installer le cluster et les fichiers de configuration du plan de cluster dans le répertoire ~/.config/tanzu/tkg
de la machine de démarrage et prend en charge les superpositions ytt
pour ces configurations.
Les superpositions ytt
spécifient comment modifier les paramètres cibles dans les emplacements cibles dans un fichier YAML source, afin de prendre en charge toutes les personnalisations possibles.
Pour obtenir plus d'informations, reportez-vous à la section Configuration de TKC avancée avec ytt.
Pour plus d'informations sur le téléchargement et l'installation de ytt
, reportez-vous à la section Installer les outils Carvel.
Pour déployer TKG avec un cluster de gestion autonome, le programme d'installation de Tanzu Kubernetes Grid est un assistant graphique que vous démarrez en exécutant la commande tanzu mc create --ui
. L'assistant du programme d'installation s'exécute sur la machine de démarrage et fournit une interface utilisateur pour vous guider dans le processus de déploiement d'un cluster de gestion autonome.
La CLI Tanzu utilise un fichier de configuration de cluster pour créer des clusters dans les circonstances suivantes :
Lorsque le programme d'installation de TKG crée un cluster de gestion autonome, il capture les entrées utilisateur à partir de l'interface utilisateur et écrit les valeurs entrées dans un fichier de configuration de cluster. Le programme d'installation de TKG utilise ensuite ce fichier de configuration de cluster pour déployer le cluster de gestion autonome.
Les variables requises et facultatives dans le fichier de configuration du cluster dépendent de l'option de déploiement du cluster de gestion :
La mise à niveau de TKG signifie différentes choses en fonction de son option de déploiement :
tanzu management-cluster upgrade
met à niveau le cluster de gestion autonome vers la version de la CLI Tanzu de Kubernetes.La mise à niveau d'un cluster de charge de travail dans Tanzu Kubernetes Grid implique la migration de ses nœuds pour qu'ils s'exécutent sur une image de machine virtuelle de base avec une version plus récente de Kubernetes. Par défaut, les clusters de charge de travail sont mis à niveau vers la version native de Kubernetes du cluster de gestion, mais vous pouvez spécifier d'autres versions de Kubernetes autres que celle par défaut vers lesquelles mettre à niveau les clusters de charge de travail.
Pour savoir quelles versions de Kubernetes sont disponibles dans Tanzu Kubernetes Grid, reportez-vous à la section :
Pour intégrer votre cluster de gestion à Tanzu Mission Control, une plate-forme de gestion Kubernetes avec une console d'interface utilisateur, reportez-vous aux sections suivantes :