Kalpana Kalpana (Editor)

Apache Mesos

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Development status
  
Active

Operating system
  
Cross-platform

Written in
  
C++


Developer(s)
  
Apache Software Foundation

Stable release
  
1.1.0 / November 3, 2016 (2016-11-03)

Type
  
Cluster management software

Apache Mesos is an open-source software to manage computer clusters that was developed at the University of California, Berkeley.

Contents

History

Mesos began as a research project in the UC Berkeley RAD Lab by then PhD students Benjamin Hindman, Andy Konwinski, and Matei Zaharia, as well as professor Ion Stoica. The students started working on the project as part of a course taught by David Culler. It was originally named Nexus but due to a conflict with another university's project, was renamed to Mesos.

Mesos was first presented in 2009 (while still named Nexus) by Andy Konwinski at HotCloud '09 in a talk accompanying the first paper published about the project. Later in 2011 it was presented in a more mature state in a talk by Zaharia at the Usenix Symposium on Networked Systems Design and Implementation conference about the paper "Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center" by Benjamin Hindman, Andy Konwinski, Zaharia, Ali Ghodsi, Anthony D. Joseph, Randy Katz, Scott Shenker, Ion Stoica.

On July 27, 2016, the Apache Software Foundation announced version 1. It added the ability to centrally supply Docker, rkt and appc instances.

Technology

Mesos uses Linux Cgroups to provide isolation for CPU, memory, I/O and file system. Mesos is compared to the Google Omega scheduler, a highly secretive platform used internally to manage and distribute Google's services.

Apache Aurora

Apache Aurora is a Mesos framework for both long-running services and cron jobs, originally developed by Twitter starting in 2010 and open sourced in late 2013. It can scale to tens of thousands of servers, and holds many similarities to Google's Borg scheduler including its rich DSL for configuring services.

Chronos

Chronos is a distributed cron-like system, that is elastic and can also express dependencies between jobs.

Marathon

Marathon is promoted for platform as a service or container orchestration system scaling to thousands of physical servers. It is fully REST based and allows canary style deploys and deployment topologies. It is written in the programming language Scala.

Users

Social networking site Twitter began using Mesos and Apache Aurora in 2010, after Hindman gave a presentation to a group of Twitter engineers.

Airbnb said in July 2013 that it uses Mesos to run data processing systems like Apache Hadoop and Apache Spark.

The Internet auction website eBay stated in April 2014 that it used Mesos to run continuous integration on a per-developer basis. They accomplish this by using a custom Mesos plugin that allows developers to launch their own private Jenkins instance.

In April 2015, it was announced that Apple service Siri is using its own Mesos framework called Jarvis.

In August 2015, it was announced that Verizon selected Mesosphere's DCOS, which is based on open source Apache Mesos, for data center service orchestration.

In November 2015, Yelp announced they had been using Mesos and Marathon for a year and a half for production services.

Commercial support

Software startup Mesosphere sells the Datacenter Operating System, a distributed operating system, based on Apache Mesos. In September 2015, Microsoft announced a commercial partnership with Mesosphere to build container scheduling and orchestration services for Microsoft Azure.

References

Apache Mesos Wikipedia