Vous pouvez utiliser vSphere with Tanzu pour transformer vSphere en une plate-forme pour exécuter des charges de travail Kubernetes en mode natif sur la couche d'hyperviseur. Lorsqu'il est activé sur un cluster vSphere, vSphere with Tanzu offre la possibilité d'exécuter des charges de travail Kubernetes directement sur des hôtes ESXi et de créer des clusters Kubernetes en amont dans des pools de ressources dédiés.

Défis actuels des piles d'applications

Les systèmes distribués actuels sont constitués de plusieurs microservices exécutant généralement un grand nombre d'espaces Kubernetes et de machines virtuelles. En général, une pile qui n'est pas basée sur une vSphere with Tanzu se compose d'un environnement virtuel sous-jacent, avec l'infrastructure Kubernetes déployée à l'intérieur des machines virtuelles et respectivement des espaces Kubernetes également exécutés dans ces machines virtuelles. Trois rôles distincts gèrent chaque partie de la pile, à savoir les développeurs d'applications, les administrateurs de clusters Kubernetes et les administrateurs vSphere.

Figure 1. Pile d'applications actuelle
Pile comportant 3 couches : charge de travail Kubernetes, cluster Kubernetes, environnement virtuel. 3 rôles les gèrent : Développeur, Administrateur de cluster, vSphere Admin.
Les différents rôles n'ont pas de visibilité ni de contrôle sur leurs environnements mutuels :
  • En tant que développeur d'applications, vous pouvez exécuter des espaces Kubernetes, et déployer et gérer des applications basées sur Kubernetes. Vous n'avez pas de visibilité sur l'ensemble de la pile qui exécute des centaines d'applications.
  • En tant qu'ingénieur DevOps, vous disposez uniquement d'un contrôle sur l'infrastructure Kubernetes, sans les outils permettant de gérer ou de surveiller l'environnement virtuel et de résoudre les problèmes liés aux ressources et autres problèmes.
  • En tant qu'administrateur vSphere, vous disposez d'un contrôle total sur l'environnement virtuel sous-jacent, mais vous n'avez pas de visibilité sur l'infrastructure Kubernetes, sur le placement des différents objets Kubernetes dans l'environnement virtuel et sur la manière dont ils consomment les ressources.

Les opérations sur la pile complète peuvent être délicates, car elles nécessitent une communication entre les trois rôles. Le manque d'intégration entre les différentes couches de la pile peut également présenter quelques défis. Par exemple, le programmateur Kubernetes ne dispose pas d'une visibilité sur l'inventaire de vCenter Server et il ne peut pas placer les espaces intelligemment.

Quelle aide est apportée par vSphere with Tanzu ?

vSphere with Tanzu crée un plan de contrôle Kubernetes directement sur la couche de l'hyperviseur. En tant qu'administrateur vSphere, vous activez des clusters vSphere existants pour la gestion de la charge de travail, créant ainsi une couche Kubernetes dans les hôtes ESXi faisant partie du cluster. Un cluster sur lequel la gestion de la charge de travail est activée est appelé un Cluster superviseur.

Figure 2. vSphere with Tanzu

La pile vSphere with Tanzu avec les charges de travail se trouve en haut. La pile Environnement virtuel se trouve en bas. Deux rôles les gèrent : Développeur et vSphere Admin.
La présence d'un plan de contrôle Kubernetes sur la couche d'hyperviseur active les capacités suivantes dans vSphere :
  • En tant qu'administrateur vSphere, vous pouvez créer des espaces de noms sur le Cluster superviseur (appelés Espaces de noms vSphere) et les configurer avec la capacité spécifiée de mémoire, de CPU et de stockage. Vous pouvez fournir les Espaces de noms vSphere aux ingénieurs DevOps.
  • En tant qu'ingénieur DevOps, vous pouvez exécuter des charges de travail composées de conteneurs Kubernetes sur la même plate-forme avec des pools de ressources partagés au sein d'un Espace de noms vSphere. Dans vSphere with Tanzu, les conteneurs s'exécutent à l'intérieur d'un type spécial de machine virtuelle appelé Espace vSphere. Vous pouvez également déployer des machines virtuelles standard.
  • En tant qu'ingénieur DevOps, vous pouvez créer et gérer plusieurs clusters Kubernetes dans un espace de noms et gérer leur cycle de vie à l'aide du Service Tanzu Kubernetes Grid. Les clusters Kubernetes créés à l'aide de Service Tanzu Kubernetes Grid sont appelés des clusters Tanzu Kubernetes.
  • En tant qu'administrateur vSphere, vous pouvez gérer et surveiller des Espaces vSphere, des machines virtuelles et des clusters Tanzu Kubernetes à l'aide de vSphere Client.
  • En tant qu'administrateur vSphere, vous avez une visibilité totale sur les Espaces vSphere, les machines virtuelles et les clusters Tanzu Kubernetes s'exécutant dans différents espaces de noms, leur positionnement dans l'environnement et la manière dont ils consomment les ressources.

L'exécution de Kubernetes sur la couche hyperviseur facilite également la collaboration entre les administrateurs vSphere et les équipes DevOps, car les deux rôles utilisent les mêmes objets.

Qu'entend-on par charge de travail ?

Dans vSphere with Tanzu, les charges de travail sont des applications déployées de l'une des manières suivantes :

  • Applications constituées de conteneurs exécutés à l'intérieur d'Espaces vSphere, de machines virtuelles standard ou des deux.
  • Clusters Tanzu Kubernetes déployés à l'aide de Service VMware Tanzu™ Kubernetes Grid™.
  • Applications qui s'exécutent à l'intérieur de clusters Tanzu Kubernetes déployés à l'aide de Service VMware Tanzu™ Kubernetes Grid™.