Mesosphere Marathon -


Apache
跨平台
Scala

软件简介

Marathon(马拉松)是一个全新的框架,它将Mesos变成一个更有活力的工具,进而可以在单一的集群上运行不同的应用程序。

它的设计宗旨就是让用户在同一组服务器之上,更智能地运行多种应用程序和服务——HadoopStorm,甚至一个标准的Web应用。Marathon出自于一家初创公司
Mesosphere之手,这家公司主要就是想构建一个数据中心操作系统,不过这个系统是运行在Apache
Mesos
集群管理软件之上,这也是
Twitter基础设施的重要组成部分。该公司的联合创始人是前Airbnb的工程师Florian Leibert(也曾在Twitter工作过)和Tobias
Knaup。

Mesos仅仅是适用于集群的管理,这意味着它可以隔离不同的任务负载。但是仍然需要额外的工具来帮助工程师查看不同系统上运行的工作负载。不然的话,如果某些工作负载消耗了所有资源,那么重要的工作负载可能就难以及时地获得资源。

Marathon是一个“元架构”,它可以让Mesos和Chronos变得更好用,随着Mesos一起运行,并且在运行工作负载的同时提供了更高的可用性,让用户可以添加资源以及自动的故障转移。

特性:

  • HA -- run any number of Marathon schedulers, but only one gets elected as leader; if you access a non-leader, your request gets proxied to the current leader

  • Constraints - e.g., only one instance of an application per rack, node, etc.

  • Service Discovery& Load Balancing via HAProxy or the events API (see below).

  • Health Checks : check your application’s health via HTTP or TCP checks.

  • Event Subscription lets you supply an HTTP endpoint to receive notifications, for example to integrate with an external load balancer.

  • Web UI

  • JSON/REST API for easy integration and scriptability

  • Basic Auth and SSL

  • Metrics : available at/metricsin JSON format