Apache Mesos is a resource manager for datacenter infrastructure that uses a 2-level scheduling model to provide hardware resources to various application frameworks.Similar to Infrastructure-as-a-Service (IaaS), Mesos manages hardware and the execution of applications, while delegating the responsibility of deployment to other platforms. In the Mesos’ model, application frameworks are responsible for scheduling and deployment logic. Multiple frameworks can be run on bare metal at the same time, using a single pool of resources, including use cases for long-running services (including Marathon, Aurora, Singularity) and batch or streaming (Hadoop, Storm, Jenkins).
Several IaaS projects, including OpenStack and CloudStack, are interested in the abstraction Mesos provides for running and writing distributed applications. While IaaS typically addresses a larger set of concerns, the narrow focus of Mesos on resource management provides opportunities for integration between traditional IaaS and Mesos in the future.
In this session, you’ll get you an overview of the Mesos compute model, see how it relates to Infrastructure-as-a-Service, and walk through writing an application for Mesos using the framework API.