Pourquoi les CIO doivent s’intéresser à Kubernetes en 2019
Joe Baguley, VP et CTO EMEA VMware
Associés aux nouvelles applications les containers s’imposent dans les entreprises et l’orchestrateur de containers Kubernetes revêt un rôle de plus en plus stratégique. Pourquoi ce type de virtualisation est-il plébiscité et comment va-t-il cohabiter avec les machines virtuelles (VM) et les micro VM sans pour autant complexifier la tâche des équipes informatiques ? Autant de questions que j’ai posées à Alexandre Caussignac.
Alexandre Caussignac. La généralisation des machines virtuelles (virtualisation de type 1) a eu lieu au début des années 2000. A l’époque les applications étaient monolithiques et les serveurs X86 souvent utilisés à moins de 20% de leur capacité. En découplant le matériel du logiciel les machines virtuelles ont amélioré l’efficacité des serveurs et ouvert la voie aux infrastructures définies par logicielles (Software Defined). La virtualisation a été étendue au stockage et au réseau et une majorité d’entreprises utilise ce socle d’infrastructures virtualisées pour bâtir leur cloud privé. L’adoption de la virtualisation est telle qu’aujourd’hui de nombreux fournisseurs de cloud public ont noué des partenariats avec VMware pour étendre la virtualisation de manière homogène dans un cloud hybride. Le container (virtualisation de type 2) est apparu en entreprise en 2013 dans un contexte applicatif bien différent.
La révolution numérique est passée par là. Les entreprises devaient produire et mettre en service très rapidement beaucoup plus d’applications et pouvoir continuellement les enrichir en fonctionnalités sans perturber l’utilisateur. On a ainsi vu apparaitre des notions d’intégration continue et de développement continu (CI/CD) associées à des méthodes DevOps. Pour donner plus d’agilité au développement, les nouvelles applications (souvent appelées cloud natives) sont conçues sur des architectures de microservices qui décomposent l’application en éléments autonomes et indépendants. Ces micro-services et les architectures distribuées avaient besoin d’une virtualisation adaptée à leurs caractéristiques : le container.
Une VM est l’équivalent d’un serveur logique. Elle contient le système d’exploitation et l’ensemble des couches applicatives. Cela convenait parfaitement à des applications monolithiques qui constituent encore l’essentiel du patrimoine applicatif des entreprises. Par contre avec les nouvelles applications distribuées cela revenait à créer autant de VMs que de microservices et donc à multiplier les systèmes d’exploitation.
Les conteneurs sont plus simples et plus légers que les machines virtuelles. Ils partagent le noyau de l’OS hôte et évitent ainsi la redondance des OS invités et les démarrages associés. Chaque container est dédié à une tâche (un processus) et n’embarque que ce qui lui est nécessaire pour fonctionner (les environnements d’exécution de code autonomes). Ils sont donc parfaitement adaptés aux applications nécessitant de la portabilité et de la scalabilité.
Les containers ont été vus tout d’abord comme une alternative aux VMs car on pouvait mettre six à huit fois plus de conteneurs que de machines virtuelles sur un serveur bare-metal. Avec le recul et l’expérience on s’est aperçu que l’association containers et machines virtuelles se révèle particulièrement bénéfique.
Avec les micro VMs, un nouveau modèle se dessine bénéficiant de l’isolation intrinsèque des machines virtuelles et de la portabilité et de la scalabilité des containers. De grands acteurs tels qu’Amazon Web Services et Google se basent déjà sur ces micro VMs pour mettre à disposition une bonne partie de leurs services managés (AWS Lambda, …). L’objectif est de réduire la machine virtuelle à la taille d’un container. Au sein d’une micro VM, un container ne sera plus contraint de partager l’OS. Cela permet de sécuriser et d’isoler le container avec une empreinte minime, portable et scalable.
C‘est la raison pour laquelle Kubernetes rencontre un tel succès car l’orchestration est plus que jamais nécessaire pour le monde de l’infrastructure. Mais la bataille stratégique ne repose plus réellement sur les runtimes de haut niveau (API), qui sont devenus une commodité dans la philosophie de Kubernetes via les interfaces (CRI, CNI, CSI), mais plutôt sur les runtimes de bas niveau (binaire que va exécuter le container). Et c’est là qu’entre en scène des approches comme les micro VM qui assurent isolation et portabilité.
Les entreprises ont des approches très pragmatiques et on trouvera chez la majorité d’entre elles une combinaison de VM, de containers et de micro VM avec le risque de créer de nouveaux Silo. VMware a pris la mesure de l’enjeu et a annoncé en aout 2019 le projet Pacific. VMware a ré–architecturé vSphere pour intégrer Kubernetes et offrir aux entreprises une unique plateforme pour gérer les applications existantes (monolithiques) et de nouvelles applications (à base de micro services). VM, containers et micro VM (standards ou éphémères) peuvent coexister directement sur l’hyperviseur et être gérés comme un tout cohérent (namespace VM/Container). Les équipes informatiques disposeront d’une vision unifiée des clusters, containers et VM fonctionnant sur VMware vCenter Server for Kubernetes.
Retrouvez + de points de vue : http://vmwareblog-staging.b2ldigital.com/emea/fr/
https://www.vmware.com/fr.html
Categorie: Actualités et temps forts
Pas encore de commentaire