
Kubernetes est un projet open source devenu un outil d'orchestration de conteneurs largement utilisé, permettant le déploiement et la gestion à grande échelle d'applications multi-conteneurs. Bien qu'il soit couramment utilisé avec Docker, la principale plateforme de conteneurisation, il est compatible avec tout système de conteneurs respectant les normes de l'Open Container Initiative (OCI) pour les formats d'images et les environnements d'exécution de conteneurs. Grâce à sa nature open source et à ses restrictions d'utilisation minimales, il peut être utilisé librement par quiconque souhaite exécuter des conteneurs où qu'il soit : sur site, dans le cloud public ou une combinaison des deux.
Kubernetes intègre des commandes qui prennent en charge la majeure partie des tâches nécessaires à la gestion des applications, permettant ainsi l'automatisation des opérations quotidiennes et garantissant le bon fonctionnement des applications.
Kubernetes gère le calcul, le réseau et le stockage de vos charges de travail, permettant ainsi aux développeurs de se concentrer sur les applications sans se soucier de l'environnement sous-jacent.
Kubernetes surveille en permanence l'état des services, redémarre les conteneurs défaillants ou bloqués et ne rend les services disponibles aux utilisateurs qu'après avoir confirmé leur bon fonctionnement.
Kubernetes est un projet initialement développé chez Google et succède à Google Borg, un outil de gestion de conteneurs interne. Google a rendu Kubernetes open source en 2014, car les architectures de microservices distribuées qu'il permet facilitent l'exécution d'applications dans le cloud. Google considère l'adoption des conteneurs, des microservices et de Kubernetes comme un levier potentiel pour inciter les clients à utiliser ses services cloud. Kubernetes est également compatible avec Azure et AWS. La maintenance de Kubernetes est actuellement assurée par la Cloud Native Computing Foundation, qui dépend de la Linux Foundation.
Kubernetes et Docker sont souvent perçus, à tort, comme des alternatives mutuellement exclusives, alors qu'il s'agit de technologies différentes mais complémentaires pour l'exécution d'applications conteneurisées.
Docker permet d'empaqueter tout ce qui est nécessaire à l'exécution d'une application dans un conteneur, lequel peut être stocké et ouvert. Une fois vos applications empaquetées, vous avez besoin d'un moyen de les gérer ; c'est là qu'intervient Kubernetes.
Kubernetes, qui signifie « capitaine » en grec, agit comme le capitaine d'un navire, responsable du transport et de la livraison sécurisés de ces conteneurs là où ils sont nécessaires.
Kubernetes peut être utilisé indépendamment ou conjointement avec Docker.
Plutôt que d'être une alternative, Docker est généralement utilisé avec Kubernetes pour conteneuriser et exécuter des applications à grande échelle, ce qui rend la comparaison moins directe entre « Kubernetes et Docker ».
La distinction entre Docker et Kubernetes réside dans leurs rôles respectifs dans la conteneurisation et l'exécution d'applications.
Docker est un standard ouvert du secteur pour l'empaquetage et la distribution d'applications dans des conteneurs. Kubernetes utilise Docker pour déployer, gérer et faire évoluer les applications conteneurisées.
Kubernetes permet de créer des applications faciles à gérer et déployables partout.
Proposé en tant que service managé, Kubernetes offre diverses options pour répondre à vos besoins. Voici quelques cas d'utilisation courants :
Kubernetes facilite la création d'applications cloud-native basées sur des microservices et prend en charge la conteneurisation des applications existantes. Il constitue ainsi la base de la modernisation des applications et permet un développement plus rapide.
Conçu pour être utilisé partout, Kubernetes permet aux applications de s'exécuter sur site, dans les clouds publics et dans des environnements hybrides, offrant ainsi la possibilité de les exécuter là où c'est nécessaire.
Kubernetes peut ajuster automatiquement la taille du cluster nécessaire à l'exécution d'un service, permettant ainsi une mise à l'échelle automatique des applications en fonction de la demande et une exécution efficace.
Les conteneurs encapsulent une application dans un format facile à déployer et portable. L'architecture Kubernetes est conçue pour exécuter des applications conteneurisées. Un cluster Kubernetes comprend au moins un plan de contrôle et au moins un nœud de travail (généralement un serveur physique ou virtuel).
Le plan de contrôle a pour principales responsabilités d'exposer l'API Kubernetes via le serveur d'API et de gérer les nœuds qui composent le cluster. Il prend les décisions relatives à la gestion du cluster et détecte les événements auxquels il est affecté, auxquels il répond. La plus petite unité d'exécution pour une application exécutée dans Kubernetes est un pod Kubernetes, composé d'un ou plusieurs conteneurs. Les pods Kubernetes s'exécutent sur les nœuds de travail.

.jpg&w=640&q=75)


Copyright © 2024 - Tous droits réservés.