Kubernetes (communément appelé « K8s ») est un système open source qui vise à fournir une « plate-forme permettant d'automatiser le déploiement, la montée en charge et la mise en œuvre de conteneurs d'application sur des grappes de serveurs » (Wikipedia)
Quels sont les avantages de Kubernetes ?
Kubernetes permet de réaliser des économies sur la gestion de l'écosystème numérique et sur les processus manuels qu'il permet d'automatiser. Kubernetes provisionne et intègre automatiquement les conteneurs dans les nœuds pour une utilisation optimale des ressources.
L'utilisation de conteneurs pour vos applications offre un moyen plus léger et plus agile de gérer la virtualisation qu'avec des machines virtuelles (VM). Les conteneurs Kubernetes ne contiennent que les ressources dont une application a réellement besoin (ex.: son code, ses dépendances) et utilisent les fonctionnalités et les ressources du système d'exploitation hôte. Ainsi les conteneurs sont plus petits, plus rapides et plus portables.
Le système de mise à l'échelle automatique de Kubernetes permet d'augmenter ou de réduire l'activité pour répondre plus rapidement à la demande. La mise à l'échelle automatique démarre de nouveaux conteneurs si nécessaire en cas de charges lourdes ; par exemple, lorsqu'un événement en ligne est lancé et qu'il y a une augmentation soudaine des requêtes. Lorsque le besoin est terminé, Kubernetes réduit à nouveau automatiquement les ressources pour réduire le gaspillage.
Kubernetes vous aide à exécuter vos applications conteneurisées de manière fiable. Il place et équilibre automatiquement les charges de travail conteneurisées et met à l'échelle le cluster de manière appropriée pour répondre à la demande croissante et maintenir le système en activité. Si un nœud du cluster tombe en panne, la charge de travail est redistribuée aux autres nœuds sans perturber la disponibilité pour les utilisateurs.
Kubernetes fournit également des capacités d'auto-réparation et redémarrera, reprogrammera ou remplacera un conteneur en cas de dysfonctionnement. Kubernetes vérifie en continu l'état des services en redémarrant les conteneurs bloqués ou ayant rencontré une erreur, et il ne rend les services disponibles aux utilisateurs que lorsque leur bon fonctionnement a été confirmé.
Kubernetes vous permet d'effectuer des mises à jour progressives de votre logiciel sans temps d'arrêt. Même les applications à haute disponibilité peuvent être configurées dans Kubernetes sur un ou plusieurs services de cloud public de manière à maintenir une disponibilité très élevée.
Une fois installé, Kubernetes gère le calcul, la mise en réseau et le stockage nécessaires pour la bonne exécution des services. Cela permet aux développeurs de se concentrer sur les applications, sans se soucier de l'environnement sous-jacent.
Kubernetes dispose de commandes intégrées pour réaliser le plus gros du travail de gestion des applications en vous permettant d'automatiser les opérations quotidiennes. Vous pouvez ainsi vous assurer que les applications s'exécutent toujours comme vous le souhaitez.
Kubernetes est un projet dirigé par la communauté et est un outil entièrement open source (à une époque, le logiciel open source connaissant la croissance la plus rapide de tous les temps), ce qui signifie qu'il existe un vaste écosystème d'autres outils open source conçus pour être utilisés avec lui.
L'outil EOLE3 permet d'automatiser l'installation de services au sein d'un cluster Kubernetes. Kubernetes pouvant avoir courbe d'apprentissage assez abrupte, l'outil EOLE3 facilite la mise en oeuvre de services fonctionnels dans un environnement Kubernetes en offrant une solution "clé en main" pour la mise en place de services rassemblés autour d'un portail d'accès et d'une authentification centralisée.
L'outil EOLE3 rend possible le déploiement d'une infrastructure de services complète dans un environnement Kubernetes : portail, service d'authentification unifié, services utilisateurs et d'administration.
L'outil EOLE3 facilite la mise à jour de l'infrastructure. Il facilite la modification de sa configuration et la mise à jour du portail et des services.