Accéder à

Qu'est-ce que Kubernetes ?

Avec l'adoption généralisée des conteneurs par les organisations, Kubernetes, le logiciel de gestion centré sur les conteneurs, fait désormais figure de norme de facto pour le déploiement et l'exécution d'applications conteneurisées. L'environnement Kubernetes est né dans Google Cloud : il a été développé chez Google et publié en Open Source en 2014. Kubernetes s'appuie sur 15 ans d'expérience dans l'exécution de charges de travail conteneurisées Google et sur les contributions précieuses de la communauté Open Source. S'inspirant du système de gestion de clusters interne de Google appelé Borg, Kubernetes simplifie tout ce qui est associé au déploiement et à la gestion de votre application. Kubernetes permet l'automatisation de l'orchestration de conteneurs, qui améliore votre fiabilité et réduit le temps de traitement ainsi que les ressources attribuées aux opérations quotidiennes.

En savoir plus sur GKE, les services Kubernetes gérés de Google Cloud

Caractéristiques de Kubernetes

Kubernetes (parfois abrégé sous la forme K8s, où le chiffre 8 correspond au nombre de lettres entre le "K" et le "s") est un environnement Open Source permettant de déployer, faire évoluer et gérer des applications conteneurisées, sur n'importe quelle plate-forme.

Kubernetes automatise les tâches opérationnelles de gestion des conteneurs et inclut des commandes intégrées permettant de déployer des applications, de leur apporter des modifications, d'effectuer un scaling à la hausse ou à la baisse en fonction des besoins, de surveiller les applications, et bien plus encore. La gestion des applications est ainsi facilitée.

Quels sont les avantages de Kubernetes ?

Opérations automatisées

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.

Abstraction de l'infrastructure

Une fois installé, Kubernetes gère le calcul, la mise en réseau et le stockage pour le compte de vos charges de travail. Cela permet aux développeurs de se concentrer sur les applications, sans se soucier de l'environnement sous-jacent.

Surveillance de l'état des services

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 et Docker

Souvent considérés à tort comme des alternatives, Kubernetes et Docker sont des technologies certes différentes, mais complémentaires, pour l'exécution d'applications conteneurisées.

Docker vous permet d'inclure tout ce dont vous avez besoin pour exécuter votre application dans un conteneur qui peut être stocké et ouvert où et quand vous le souhaitez. Dès que vous commencez à conteneuriser vos applications, vous avez besoin d'un outil pour les gérer. C'est là que Kubernetes entre en jeu.

Kubernetes est un terme grec qui signifie "capitaine". À l'instar du capitaine chargé d'assurer la sécurité à bord de son bateau pendant toute la traversée, Kubernetes est responsable d'assurer le transport en toute sécurité de ces conteneurs jusqu'à leur emplacement de destination, où ils pourront être utilisés.

  • Kubernetes peut être utilisé avec ou sans Docker.
  • Docker n'est pas une alternative à Kubernetes. Il ne s'agit donc pas vraiment de choisir entre Kubernetes et Docker, mais plutôt d'utiliser Kubernetes avec Docker pour conteneuriser vos applications et les exécuter à grande échelle.
  • La différence entre Docker et Kubernetes se trouve au niveau du rôle que joue chacun d'eux dans la conteneurisation et l'exécution de vos 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 mettre à l'échelle des applications conteneurisées.

Comment est utilisé Kubernetes ?

Kubernetes permet de créer des applications faciles à gérer et à déployer dans n'importe quel environnement. Lorsqu'il est disponible en tant que service géré, Kubernetes vous offre toute une gamme de solutions pour répondre à vos besoins. Voici quelques cas d'utilisation courants.

Accélération du développement

Kubernetes vous aide à créer des applications cloud natives basées sur des microservices. Il permet également la conteneurisation d'applications existantes. Il constitue donc la base de la modernisation des applications, en vous permettant de développer des applications plus rapidement.

Déploiement d'applications dans n'importe quel environnement

Kubernetes est conçu pour être utilisé dans n'importe quel environnement. Vous pouvez ainsi exécuter vos applications sur site et dans des clouds publics, ainsi que dans des déploiements hybrides intermédiaires. Vous pouvez par conséquent exécuter vos applications là où vous en avez besoin.

Exécution de services efficaces

Kubernetes peut ajuster automatiquement la taille d'un cluster requis pour exécuter un service. Cela vous permet d'effectuer un scaling automatique à la hausse ou à la baisse de vos applications en fonction de la demande et de les exécuter efficacement.

Créé par les mêmes développeurs à l'origine de Kubernetes, Google Kubernetes Engine (GKE) est un service Kubernetes dans le cloud simple à utiliser pour exécuter des applications conteneurisées. GKE peut vous aider à mettre en œuvre une stratégie Kubernetes efficace pour vos applications dans le cloud. Avec Anthos, Google offre une expérience Kubernetes cohérente pour vos applications sur site et dans des clouds multiples. Anthos vous offre un moyen sûr, efficace et fiable d'exécuter vos clusters Kubernetes partout.