Pourquoi Mesos excite le secteur informatique

Pourquoi Mesos excite le secteur informatique Mesos est une nouvelle solution open source et brillante de la fondation Apache. Zoom sur un système de gestion de cluster qui a forcé l'admiration de la Silicon Valley.

 Mesos, c'est quoi ?

Mesos est ce qu'on appelle un système de gestion de cluster. C'est plus précisément une solution pensée pour mettre en place et optimiser des systèmes distribués. Mesos va permettre de gérer et partager de manière fine, souple et dynamique des ressources entre différents clusters, pour diverses applications.

Il s'agit d'un système open source distribué sous licence Apache. Mesos est même devenu un projet de première importance pour la Fondation Apache (c'est un "Top-Level Project") depuis juillet 2013. La solution a beau n'en être qu'à sa version 0.20, elle est déjà en production dans de nombreuses entreprises de premier plan, comme Hubspot, Vimeo, Twitter, Airbnb ou eBay.

 A quoi ça sert ?

En permettant d'isoler et partager des ressources, Apache Mesos convient particulièrement bien pour exécuter des applications et des systèmes distribués. Apache Mesos est donc notamment utilisé pour faire tourner Hadoop, Spark, Storm, Kafka, ou Elastic Search. Autant de systèmes associés au Big Data, et qui ont clairement le vent en poupe aujourd'hui dans l'informatique.

Concrètement, Mesos permet d'exécuter plusieurs systèmes distribués sur le même cluster : par exemple plutôt que de faire tourner un cluster pour Hadoop, et un autre pour Storm, un même cluster pourrait faire tourner les deux grâce au mécanisme de gestion de ressources de Mesos.

Mesos est taillé pour le Big Data

Mesos ouvre donc globalement la voie à une meilleure optimisation de la gestion des ressources. Ce qui ne laisse évidemment pas indifférents les responsables informatiques, surtout ceux qui se sont lancés dans les systèmes distribués. Il semble d'ailleurs que Google ait mis au point un système très comparable, d'abord appelé "Borg" puis "Omega", et qu'il l'utilise massivement en interne.

 Comment ça marche ?

Mesos est parfois comparé à la virtualisation, mais en plus efficace... Car, un peu comme la virtualisation, Mesos facilite "l'abstraction du CPU, de la mémoire, du stockage et autres ressources de calcul des machines, qu'elles soient physiques ou virtuelles". Il permet ainsi de bâtir "facilement et efficacement des systèmes distribués et élastiques", comme l'explique le site officiel du projet.

Dans ce contexte, Mesos peut permettre de mettre en place des planificateurs ("schedulers") de ressources personnalisées, offrant une gestion fine de la planification multi-ressources (mémoire et CPU). Les containers Docker sont aussi supportés. Une interface web permet de voir l'état du cluster. Testée en production, la capacité de dimensionnement de Mesos pourrait prendre en charge des milliers de nœuds.

 Qui s'en sert, et comment ?

Deux géants de l'informatique ont largement partagé leur expérience d'utilisation de Mesos.

Airbnb en est par exemple un gros utilisateur, et a largement communiqué sur son expérience en la matière. Une présentation réalisée par l'ingénieur Brenden Matthews (en juillet 2013) expliquait en détail comment Airbnb exécutait notamment Hadoop et Storm sur Mesos.

Twitter est aussi un utilisateur bien connu de Mesos, et pour cause : le co-créateur de Mesos, Benjamin Hindman, a été salarié par le réseau social, qui l'a tout simplement mis au cœur de son architecture. Twitter ne s'en cache pas, plusieurs de ses services clés tournent sur Mesos, comme ses services analytics, ou publicitaires. "Nous nous en servons pour bâtir tous nos nouveaux services. En utilisant Mesos, ces services peuvent évoluer et tirer parti efficacement d'un ensemble partagé de serveurs. En outre, Mesos a changé la façon dont les développeurs pensent les lancements de nouveaux services. Au lieu de raisonner en machines statiques, les ingénieurs pensent en ressources : CPU, mémoire ou disque. L'utilisation de cette technologie chez nous s'est traduite aussi par une réduction du temps séparant le prototype du lancement", expliquait Dave Lester, "avocat de l'open source" chez Twitter.

mesos at airbnb
Mesos en action chez  Airbnb © Slide d'une présentation de Brenden Matthews (Airbnb) sur SlideShare

Serveurs / Apache