Guides Essentiels

Petit guide pour passer de la virtualisation à Kubernetes

Introduction

Des instances plus légères, des déploiements plus élastiques et beaucoup plus d’automatisation. L’orchestrateur Kubernetes s’impose en entreprise pour mettre en production les applications, non plus sous la forme de machines virtuelles, mais sous celle de containers. Ce guide est conçu pour donner les clés d’un système qui a de plus en plus vocation à remplacer l’hyperviseur dans les options d’achat du datacenter. 

Initialement assimilé à une solution d’architecture plutôt conçue pour les développeurs, avec la promesse jamais tenue qu’ils n’auraient plus jamais besoin de solliciter la DSI pour réserver des serveurs, Kubernetes est finalement redevenu un produit d’infrastructure. Il s’administre par les ingénieurs système, fait la jonction entre la technique et les besoins métier, et sert de fondation pour bâtir des projets de transformation, notamment ceux basés sur l’informatique en Edge

Kubernetes permet effectivement aux développeurs de déployer leurs applications sans tenir compte de l’infrastructure ; une couche d’abstraction abolit pour eux les différences entre serveurs sur site et ressources en cloud public, entre cluster de test et cluster de production. Mais encore faut-il savoir déployer et maintenir Kubernetes lui-même. Et pour qu’il fonctionne, il faut lui fournir de vrais serveurs, avec de vrais systèmes d’exploitation. Ce travail est celui des informaticiens. 

Lorsque Google a imaginé le concept de Kubernetes, il devait s’agir d’une technologie essentiellement exécutée en cloud public, c’est-à-dire maintenue par les seules équipes des hyperscalers. Mais la réalité du marché est que les entreprises veulent pouvoir exécuter des clusters Kubernetes chez elles. Dès lors, Kubernetes devient un système informatique au même titre que VMware vSphere. Et il se pilote par les mêmes équipes internes, celles de la DSI. 

Le principe : réduire l’empreinte des instances applicatives pour mieux les déployer

Les containers sont nés en 2004 sur le système Solaris de Sun, comme une technologie de virtualisation non pas d’une machine entière, mais juste de l’environnement d’exécution du système d’exploitation. L’idée était simplement d’économiser l’empreinte mémoire et les ressources processeur. Dans une machine virtuelle, il faut embarquer un système Linux ou Windows complet pour exécuter une application. Mais si l’application est développée avec des langages d’assez haut niveau (Java…), finalement, qu’importe le système sous-jacent. Et si l’OS importe peu, autant mettre le même dans chaque VM. Et quitte à mettre le même, autant n’en faire fonctionner qu’une seule copie par machine physique. 

Au-delà des ressources matérielles économisées, les équipes IT y voient un intérêt : pouvoir redémarrer très rapidement une application quand elle plante. On la relance juste en container, sans avoir à recharger tout un OS. 

La communauté Linux a décliné le concept en 2008, en intégrant dans le noyau 2.6.24 de son système une sorte d’hyperviseur de containers baptisé LXC. Cela fonctionne un peu comme du multitâche, mais en mieux cloisonné : chaque application est persuadée d’être la seule à fonctionner en mémoire et elle pense que l’OS qui l’exécute lui est dédié. 

L’arrivée de Docker en 2013 a permis d’apporter un peu de méthodologie au concept, à commencer par le fait de packager les containers sur disque, avec des paramètres, pour avoir une image prête à l’emploi, qu’on peut lancer automatiquement quand le moment est opportun (pic d’activité…) sur n’importe quelle machine. 

Kubernetes est arrivé en 2015 pour passer de l’exécution de containers sur une machine à leur répartition sur un cluster, au même titre que VMware vSphere. La raison d’être de Kubernetes est de repenser les applications en microservices : on les découpe en petits bouts fonctionnels individuellement plus simples à mettre à jour. Quand une fonction évolue, on actualise seulement son container, sans risquer de casser le reste des fonctions. 

Ce morcellement permet d’exécuter les applications n’importe où, Kubernetes se chargeant de leur attribuer puissance de calcul, stockage et canaux de communications. Les possibilités de l’orchestrateur sont telles qu’il est capable de déployer des applicatifs aussi bien sur de grands clusters que sur de toutes petites machines d’appoint. C’est ainsi que la couche système Kubernetes sait faire le grand écart entre cloud privé et informatique en Edge.

Télécharger gratuitement ce dossier au format PDF

1Administration-

Comprendre comment Kubernetes fonctionne

Conseils IT

Comment Kubernetes et virtualisation se différencient et se complètent

Vus de l’extérieur, containers et machines virtuelles semblent servir le même besoin : exécuter des applications sans tenir compte des limites de l’infrastructure sous-jacente. Vu de l’intérieur, choisir une plateforme ou l’autre est d’abord une question d’infrastructure. Lire la suite

Conseils IT

Les bases de l’administration d’un cluster Kubernetes

L’administration d’un cluster de containers est un peu plus complexe que celle d’un cluster de machines virtuelles. Cet article fait le point sur les différences et donne les commandes pour démarrer. Lire la suite

Conseils IT

Administration Kubernetes : tout comprendre au composant central etcd

La base etcd est accessible à chaque nœud d’un cluster Kubernetes. Découvrez le fonctionnement d’etcd et apprenez à l’utiliser dans Kubernetes. Lire la suite

2Datacenter-

Les principales solutions pour les déploiements métier

Actualités

PaaS : VMware change-t-il son fusil d’épaule ?

En annonçant Tanzu Application Platform, VMware se concentre désormais sur la fourniture d’une PaaS par-dessus Kubernetes, quitte à se retrouver face à Red Hat OpenShift. Lire la suite

Actualités

Infrastructures Kubernetes : Pulumi veut simplifier les déploiements

Dans le domaine de l’IaC, le jeune éditeur américain veut contrer Terraform et Ansible avec une batterie de templates par infrastructure et des scripts qu’on peut écrire dans n’importe quel langage. Lire la suite

Actualités

KubeCON 2023 : Rancher est désormais l’interface métier des containers

La filiale de Suse à l’initiative des composants techniques gratuits K3s et de Longhorn veut développer à présent des consoles d’administration universelles, taillées pour les activités et non pour les informaticiens. Lire la suite

Actualités

Systèmes d’infrastructure : le nouveau PDG de Red Hat expose sa stratégie

Selon Matt Hicks, OpenShift doit être vu comme une extension de RHEL à l’échelle du cloud hybride. Son modèle Open source resterait le moyen le plus sûr d’innover, vers l’edge et l’IA, en évitant les risques. Lire la suite

3Edge-

Les solutions pour concrétiser la nouvelle informatique de terrain

Actualités

KubeCON 2023 : Red Hat dévoile MicroShift, son mini OpenShift

Taillé pour exécuter un cluster de containers sur une petite machine d’appoint, le nouveau système « edge » hérite des certifications de son grand frère pour les projets industriels, militaires, télécoms et commerciaux. Lire la suite

Actualités

Distribution Kubernetes : Rakuten cible les grands déploiements en Edge

L’équipementier japonais a racheté Robin.io, a installé son Kubernetes dans tous les OpenRAN de ses antennes et le décline maintenant comme un système bâti pour les serveurs urbains ou industriels. Lire la suite

Actualités

Kubernetes : Canonical ou le défi de rester original

Lors du dernier événement KubeCON 2023, l’éditeur d’Ubuntu a mis en valeur les possibilités de Kubernetes pour le Edge et l’intelligence artificielle. Une manière d’exister face à Red Hat. Lire la suite