VSphere est une plateforme de virtualisation de serveur qui est particulièrement utile quand on la combine avec Kubernetes. Les deux outils étant des partenaires naturels, nous avons décidé, dans cet article, de vous montrer comment configurer vSphere avec Kubernetes.
Avant de se lancer
Vous souhaitez maitriser la configuration de vos clusters applicatifs ? Notre formation Kubernetes vous apprendra tout ce qu’il y a à savoir sur l’outil et vous permettre d’automatiser et de gérer vos environnements d’applications conteneurisées.
L’équipe Ambient IT
Prérequis
Avant de commencer, il faut bien garder en tête que configurer vSphere avec Kubernetes exige une compréhension de ces deux écosystèmes.
N’essayez pas de réaliser l’intégration des deux outils si vous avez des doutes sur vos capacités à vous en servir, cela ne vous rendra évidemment pas service.
Vous devez aussi avoir un compte de service vSphere (et lui donner les bonnes autorisations) qui est essentiel pour permettre à Kubernetes d’interagir avec l’outil.
Configuration de vSphere
Compatibilité
Pour intégrer les deux outils, assurez-vous d’abord que les versions soient bien compatibles. Seule la documentation officielle fait foi en la matière donc, référez-vous à elle autant que possible.
Vous devez aussi vous assurer que vous soyez à jours sur des configurations spécifiques comme disk.EnableUUI
VM et Cloud native storage
Les VM doivent être bien configurées pour le Cloud Native Storage. Assurez-vous que le paramètre disk.EnableUUID
est activé sur chaque nœud de vos clusters Kubernetes.
L’activation de ce paramètre permet à vSphere de monter de façon très précise les disques virtuels demandés par Kubernetes.
C’est l’étape à ne pas négliger pour le bon fonctionnement de l’infrastructure.
vSphere Integrated Containers
Bien qu’installer VIC ne soit pas à proprement parler une obligation, il est peut-être bien pratique pour simplifier la gestion des conteneurs.
Je vous conseille dans l’idéal de l’installer et de l’utiliser, mais cet outil peut ne pas convenir à des configurations spécifiques.
Installation et binaires
Pour faire fonctionner Kubernetes sur vSphere, vous devez utiliser certains binaires et outils pour gérer vos clusters.
Kubeadm
Kubeadm est un outil particulièrement privilégié pour l’installation de Kubernetes, il simplifie grandement le processus de bootstraping en automatisant toutes les grosses tâches complexes.
Docker
Pour Docker, vous devez configurer le daemon pour qu’il puisse considérer le driver de gestion des cgroup (je vous conseille systemd
). Cette configuration initiale englobe également d’autres paramètres de performance et de sécurité.
Configuration de kubernetes
Préparer Kubernetes pour vSphere implique aussi de configurer plusieurs éléments pour que le cluster fonctionne correctement avec l’infrastructure sous-jacente.
Fichier kubeadm.conf
Votre fichier kubeadm.conf
doit bien contenir toutes les configurations nécessaires pour initialiser le cluster :
- Les informations de réseau
- les certificats
- le point d’entrée du control plane
Cloud-provider
Le cloud provider est essentiel pour l’intégration transparente avec des services d’infrastructure cloud comme vSphere.
Vous devez le configurer pour que Kubernetes puisse y accéder pour gérer les ressources
Déploiement : Comment déployer Kubernetes sur vSphere?
Entrons maintenant dans le gros du sujet : automatiser le déploiement de Kubernetes sur vSphere.
Automatisation
Pour automatiser le déploiement de Kubernetes sur vSphere, il faut utiliser des outils comme Terraform ou Ansible.
Cela va vous faciliter grandement la mise en place et la configuration initiale des ressources nécessaires.
Pour le provisionnement automatique, ce sont des solutions comme le Cloud Native Storage ou le vSphere Storage for Kubernetes qui sont à privilégier.
Elles permettent une allocation dynamique du stockage pour les applications.
Haute Disponibilité
Vous pouvez utiliser des fonctionnalités vSphere de haute disponibilité comme vMotion, DRS et HA.
Elles peuvent toutes être configurées pour protéger vos applications contre les défaillances d’infrastructures.
Conclusion
La configuration de Kubernetes sur vSphere offre de nombreux avantages significatifs en termes de scalabilité, de gestion des applications et d’automatisation.
Pour être bien sûr que cette solution vous convient, vous devez vous assurer d’abord que vous réalisez les bonnes opérations lors de sa configuration et son installation, puis réaliser vos propres tests maison.