QUELS SONT LES RÉELS BÉNÉFICES DE KUBERNETES ?

Narquois, vous doutez : “Il n’a pas des concurrents ?”

Vous lirez parfois que Kubernetes est le “Linux du Cloud”. Cette affirmation, outre qu’elle déplace sur l’orchestrateur l’importance que portait le Système d’exploitation dans l’IT, rappelle également que comme pour les O.S., une guerre des orchestrateurs fait rage. Ou plutôt devrait-on dire “faisait” rage.

Des solutions telles que Docker Swarm, Apache Marathon, HashiCorpNomad, Red Hat OpenShift, Kontena ont longtemps bataillé pour une part du gâteau. Chacune avec ses atouts. Mais quand, à partir de 2017, des entreprises de plus en plus importantes ont choisi Kubernetes pour leur modernisation, suivies naturellement par les plus grands acteurs du Cloud (et leur écosystème), un seuil critique a été franchi. Kubernetes a gagné la guerre. Il est devenu l’orchestrateur standard de fait.

Malin, vous rétorquez : “Alors, pourquoi Kubernetes plutôt qu’un autre ?”

D’abord, parce que Kubernetes bénéficie d’une maturité avérée et s’appuie sur une architecture robuste. Avec plus de 10 ans de développements et d’utilisation, la solution est éprouvée. Chez Google, elle permet d’administrer les quelque 2 milliards de conteneurs instanciés chaque semaine pour tous les services du groupe – sans aucun doute la plus importante plateforme de conteneurs au monde.

Ensuite, la communauté et l’industrie le soutiennent massivement. Son adoption, son support et sa popularité sont sans égal sur son marché. On estime aujourd’hui que près de 70 % des entreprises ont choisis Kubernetes pour orchestrer leur architecture conteneurisée. Voilà de quoi animer une communauté (Devs et Ops ? ) et un écosystème (éditeurs et hébergeurs) pérennes, non ?

Comparé à ses compétiteurs, Kubernetes apporte nativement une large palette de fonctionnalités et d’applications supportées. Il supporte une variété de charges types de charge de travail (statelessstatefulbatch et deamons), de langages et de frameworks. Une souplesse qui conviendra à de nombreux scénarios d’usage.

Enfin, avec sa communauté particulièrement active (plus de 2 000 contributeurs Github, du développeur indépendant à l’ingénieur d’organisations du Fortune 500), Kubernetes s’enrichit continuellement. Vous trouverez toujours de l’aide pour votre projet !

Convaincu, vous rétorquez : “Quels bénéfices pour mon entreprise ?”

Avec Kubernetes, les entreprises déploient et opèrent des applications cloud-native, quel que soit l’environnement et l’infrastructure sous-jacente. C’est la solution idéale pour toutes les étapes de l’industrie logicielle intégrée : développements, tests et production. Kubernetes donne la possibilité aux utilisateurs d’adapter les ressources dédiées aux applications avec un système bien plus léger et performant que les machines virtuelles.

Dès lors, finies les périodes d’indisponibilité liées aux maintenances (et toute l’anxiété qui l’accompagne) ; finie la multiplication des bases de données (et serveurs associés) hébergeant librairies, binaires et autres pilotes (seules les images Dockerfiles doivent être stockées). Finies enfin les lourdes dépendances entre les systèmes virtualisés. Pour chaque microservice, les équipes de développement peuvent utiliser sereinement les images de conteneurs sur leur propres machines.

Avec Kubernetes, vous gagnez :

  • En rapidité : votre capacité à fournir du nouveau code à vos utilisateurs ne dépend que de votre capacité à le penser.
  • En efficacité : associée à la nature même des conteneurs (portabilité, immuabilité, résilience, découplage) ; la gestion fine qu’apporte Kubernetes permet de densifier la population de vos machines (On premise et Cloud) sans impact pour les applications qui y cohabitent.
  • En budget : à nombre d’application égal, vous exploitez (et financez) donc moins de machines.

Motivé, vous lancez : “Comment est-ce que je commence ?”

En matière de conteneurs et d’orchestrateurs, technologies, sécurités, rôles sont nouveaux et en mouvement. Ils doivent être abordés méthodiquement. A lui seul, Kubernetes ne fera pas de vous un champion de l’agilité. En plus de l’outillage qu’il fournit, une modernisation réussie demande :

  • Une stratégie globale : la conteneurisation doit s’inscrire dans une véritable volonté de transformation qui permettra d’atteindre le niveau d’agilité offrant non seulement la célérité et l’adaptabilité imposée par des business en évolution rapide mais également la réduction attendue des coûts de développement, de maintenance, et d’exploitation.
  • Des opportunités réalistes : si, dans certains cas, le déploiement d’une application monolithique sous forme de conteneurs orchestrés par Kubernetes peut avoir du sens, il ne faut pas perdre de vue que tout n’est pas “conteneurisable”.
  • Une maîtrise de la culture DevOps : le développement par microservices à base de conteneurs impose ainsi une discipline et des bonnes pratiques souvent mal connues. Mieux vaut miser sur une expertise réelle !

Rien n’oblige à se lancer frontalement dans une modernisation totale et irréversible de son SI en mode conteneurs/devops.

Si beaucoup d’organisations envisagent une refonte de l’architecture en découpant l’application monolithique par « rôles » pour les convertir en microservices ; une autre approche, plus pragmatique existe. Sur la base de critères de montée en charge ou de fonctionnalités amenées à évoluer rapidement et/ou régulièrement, les entreprises peuvent identifier dans un premier temps les parties métiers qui gagneraient à être détachées du monolithe pour les placer dans des conteneurs.

Une approche qui favorise des succès rapides et un retour sur investissement plus immédiat sans pour autant empêcher l’entreprise d’évoluer progressivement vers la philosophie DevOps et une culture avancée des microservices.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.