Kubernetes : définition, architecture, conseil... [KUBERNETES GRATUIT] En juin 2014, Google présentait pour la première fois l’orchestrateur open source Kubernetes. Depuis, cette technologie Docker n’a cessé de s’imposer dans l’univers des containers logiciels.
Kubernetes (également appelé KS8) est un orchestrateur de containers logiciels open source. Comme son nom l'indique, il est conçu pour orchestrer des architectures de grappe(s) ou cluster(s) de containers logiciels de manière extrêmement agile, en donnant la possibilité de gérer l'allocation des ressources machine sous-jacentes à la volée. 
Développé par Google, Kubernetes est la réécriture en Go de Borg, un système de clustering fait maison utilisé par le géant américain depuis des années. Google Search, Maps, Gmail, Youtube, etc. Tous ses services reposent sur des grappes de centaines de containers pilotées par Borg. Via cette brique, Google arrête et redémarre pas moins de 2 milliards de containers chaque semaine.
Kubernetes permet de se soustraire d'un cloud unique en ouvrant la possibilité de répliquer et orchestrer des applications quelle que soit la plateforme ou le cloud provider. Dans sa version 1.6, Kubernetes supporte des clusters allant jusqu'à 50 000 machines.
Les containers logiciels gérés par Kubernetes reposent sur la technologie Docker qui, elle-aussi, est portable d'un cloud à l'autre. Kubernetes apporte la couche d'orchestration permettant de manager des architectures applicatives fédérant plusieurs containers ou clusters (ou grappes) de containers Docker (certains supportant les serveurs web frontaux par exemple, d'autres contenant les services de l'application, d'autres encore la base de données sous-jacentes…). L'idée est de répliquer les composantes de l'application pour mieux gérer les ressources machines nécessaires à chacun en vue d'encaisser le trafic.
Le projet open source Kubernetes prône la vision d'un système d'information consolidé sur un seul meta-cluster piloté via un orchestrateur de containers unique. Une infrastructure pouvant être, dans le même temps, découpée en sous-clusters géographiques distribués sur plusieurs clouds, privés et/ou publics. Le tout dans une logique de ressources informatiques partagées.
Kubernetes déploie des clusters de pods Docker (ou nœuds Docker). Après avoir été installé sur un serveur maître, Kubernetes va pouvoir coordonner les composantes de l'application à gérer (serveurs frontaux, couche applicative, base de données) en les distribuant sur plusieurs pods.
Dédié à un traitement donné, un micro-service par exemple, un pod est la plus petite unité d'un cluster Kubernetes. Un pod peut embarqué un ou plusieurs containers étroitement couplés. La fonction "Déploiement" de Kubernetes contrôle l'état de santé du pod et son redémarre le cas échéant. On utilise la commande kubectl create pour créer un Déploiement orchestrant un pod.
Le recours massif aux conteneurs est devenu la stratégie de référence pour optimiser le développement logiciel, l'adoption du Cloud et la performance des équipes de production.
L'éditeur migre sa suite de productivité Microsoft 365 vers une nouvelle infrastructure cloud basée sur l'orchestrateur open source issu de la R&D de Google.
Sur les clouds d'AWS, de Google et de Microsoft, la majorité des utilisateurs utilisent des technologies sans serveur, des micro-fonctions aux applications containerisées.
Si Kubernetes est un outil très pratique pour la gestion des architectures containerisées, les entreprises qui en exploitent tout le potentiel sont encore peu nombreuses.
MicroK8s, KubeEdge, k0s, K3s… Les distributions allégées de l'orchestrateur open source se multiplient pour s'adapter aux objets connectés et aux points de terminaison réseau.
C'est le 7 juin 2014 que le projet Kubernetes sort officiellement du bois. Ce jour-là est publié par Google le tout premier commit du projet open source sur GitHub. Il est mis en ligne par Joe Beda, alors senior staff software engineer chez Google. Il s'agit d'un des trois développeurs du groupe, avec Brendan Burns et Craig McLuckie, à l'origine de la première mouture de Kubernetes. En interne, Kubernetes est baptisé Project Seven en référence à un personnage de Star Trek : un borg devenu proche des humains qui apparaît dans la série Star Trek: Voyager. Les sept rayons de la barre à roue du polygone formant le logo de Kubernetes font référence à ce nom de code.
Google livre la version 1.0 de Kubernetes le 21 juillet 2015. Il signe en parallèle un partenariat avec la fondation Linux. L'accord donne naissance à la Cloud Native Foundation qui aura pour vocation de fournir une structure de financement et une gouvernance communautaire au projet open source. Depuis, les contributeurs au code de Kubernetes se pressent au portillon. Aux côtés de Google qui demeure parmi les plus impliqués, on relève également la présence de Red Hat, Microsoft ou encore VMware.
Sans surprise, Google est le premier, dès 2015, à lancer un service Kubernetes managé en mode cloud : Google Kubernetes Engine (GKE). Principal avantage de ce modèle : il évite d'avoir à installer et mettre à jour l'orchestrateur en le proposant sous la forme d'un environnement de production informatique prêt à l'emploi. En 2017, Amazon et Microsoft lui emboîtent le pas en annonçant tous deux des offres équivalentes : Amazon Elastic Container Service for Kubernetes (EKS) pour le premier et Azure Kubernetes Service (AKS) pour le second. En France, OVH lance en 2019 son propre service Kubernetes : Managed Kubernetes Service. Il est suivi en 2020 par son concitoyen Scaleway qui sort Kapsule.
En parallèle de ces offres cloud, des éditeurs commercialisent des distributions Kubernetes déployables en local. Les trois plus populaires sont signées Mirantis, Red Had (OpenShift) et Rancher.
En 2018, Kubernetes s'est enrichi de deux briques incontournables. La première, baptisée Kubeflow, est centrée sur l'IA. Avec cette solution, Kubernetes gère l'entrainement de modèles de machine learning de manière optimisée puis assure leur portabilité vers des serveurs de production, avec à la clé la garantie d'un résultat équivalent de bout en bout.
Seconde brique : Knative. Adjoignant à Kubernetes une couche de platform as a service, elle rend transparent le déploiement d'applications. Avec Knative, les développeurs s'affranchissent des couches basses de Kubernetes en bénéficiant d'un management automatisé. Ils peuvent ainsi se concentrer sur le code (lire l'article : Avec Knative, Google fait de Kubernetes une plateforme).
D'après l'éditeur américain Datadog, l'orchestrateur était implémenté fin 2018 par environ 33% des organisations équipées d'environnements containérisés sous Docker, contre 23% un an auparavant. Selon une étude de Portworx (groupe Pure) publiée en mai 2021, l'adoption de Kubernetes s'est intensifié avec la crise du Covid (voir infographie ci-dessous). Datadog constate que l'adoption de Kubernetes se fait désormais majoritairement au profit des offres de Kubernetes as a service. D'après le baromètre annuel de l'éditeur publié en 2021, 90% des déploiements Kubernetes sont désormais réalisés en s'adossant à ce type de service.  

Sommaire Kubernetes, c'est quoi ? Pourquoi utiliser Kubernetes ? Quel est le lien entre Docker et Kubernetes ? Quelle est l'architecture de Kubernetes ? Comment utiliser Kubernetes ? Quelle est l'histoire de…
Je gère mes abonnements push
Les informations recueillies sont destinées à CCM Benchmark Group pour vous assurer l’envoi de votre newsletter.
Elles seront également utilisées sous réserve des options souscrites, par CCM Benchmark Group à des fins de ciblage publicitaire et prospection commerciale au sein du Groupe Le Figaro, ainsi qu’avec nos partenaires commerciaux.
Le traitement de votre email à des fins de publicité et de contenus personnalisés est réalisé lors de votre inscription sur ce formulaire. Toutefois, vous pouvez vous y opposer à tout moment
Plus généralement, vous bénéficiez d’un droit d’accès et de rectification de vos données personnelles, ainsi que celui d’en demander l’effacement dans les limites prévues par la loi.
Vous pouvez également à tout moment revoir vos options en matière de prospection commerciale et ciblage. En savoir plus sur notre politique de confidentialité ou notre politique Cookies.

source

Catégorisé:

Étiqueté dans :