Les deux projets visent à faciliter le déploiement et la gestion des applications à l'intérieur des conteneurs de votre centre de données ou cloud.
Afin de déployer des applications au-dessus de Mesos, on peut utiliser Marathon ou Kubernetes pour Mesos.
Marathon est un système d'initialisation et de contrôle à l'échelle du cluster pour exécuter des services Linux dans des groupes de contrôle et des conteneurs Docker. Marathon a un certain nombre de fonctionnalités de déploiement de canaris et est un projet très mature.
Marathon se déroule au-dessus de Mesos, qui est un gestionnaire de ressources hautement évolutif, testé et flexible. Marathon a fait ses preuves et évolue dans de nombreux environnements de production.
La pile technologique Mesos et Mesosphere fournit un environnement de type cloud pour exécuter les charges de travail Linux existantes, mais elle fournit également un environnement natif pour la construction de nouveaux systèmes distribués.
Mesos est un noyau de systèmes distribués, avec une API complète pour la programmation directement sur le centre de données. Il résume le matériel sous-jacent (par exemple, le métal nu ou les VM) et expose simplement les ressources. Il contient des primitives pour écrire des applications distribuées (par exemple, Spark était à l'origine une application Mesos, Chronos, etc.) telles que la transmission de messages, l'exécution de tâches, etc. Ainsi, de toutes nouvelles applications sont rendues possibles. Apache Spark est un exemple d'un nouveau framework (dans le jargon Mesos appelé) qui a été construit à l'origine pour Mesos. Cela a permis un développement très rapide - les développeurs de Spark n'ont pas eu à se soucier de la mise en réseau pour répartir les tâches entre les nœuds car il s'agit d'une primitive de base dans Mesos.
À ma connaissance, Kubernetes n'est pas utilisé à l'intérieur de Google dans les déploiements de production aujourd'hui. Pour la production, Google utilise Omega / Borg, qui est beaucoup plus similaire au modèle Mesos / Marathon. Cependant, la grande chose à propos de l'utilisation de Mesos comme base est que Kubernetes et Marathon peuvent courir dessus.
Plus de ressources sur Marathon:
https://mesosphere.github.io/marathon/
Vidéo:
https://www.youtube.com/watch?v=hZNGST2vIds