Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
6 lines (3 sloc) 1.62 KB

Mesos can run in fault-tolerant mode, in which multiple Mesos masters run simultaneously, with one of them being the active master, and the others acting as stand-bys ready to take over if the active master fails. Mesos uses Apache ZooKeeper in to elect a new active master.

Fault-tolerant mode requires Mesos to be built with ZooKeeper. This can be done with the configure option --with-included-zookeeper, which will ensure that ZooKeeper (which resides in the third_party directory) gets compiled. It is also possible to run Mesos with an external ZooKeeper by using the configure option --with-zookeeper=DIR, setting DIR to the directory of the external ZooKeeper.

To run Mesos in fault-tolerant mode, ZooKeeper has to be up and running. The script third_party/zookeeper-*/bin/zkServer.sh can be used to launch ZooKeeper (see the ZooKeeper documentation for more information). Once ZooKeeper is running, the master daemon, slave daemon(s), and the framework schedulers have to be passed a URL to the running ZooKeeper instance. The URL is of the form zoo://host1:port1,host2:port2/znode, where the host:port pairs are ZooKeeper servers and znode is a path to a znode (ZooKeeper’s equivalent of a directory) for use by Mesos. It is also possible to use the URL zoofile://filename/znode, in which case filename should contain one host:port pair per line. This URL replaces the Mesos master URL (i.e. mesos://) which is passed when Mesos is not running in fault-tolerant mode. Multiple Mesos masters can be executed this way. Mesos will ensure, through ZooKeeper, that only one of them is the active master at any given time.

You can’t perform that action at this time.