Cassandra-Mesos is a Mesos framework. It is also available as a DCOS package that provisions a Cassandra ring onto a Mesos cluster.
Starting with the 0.2.0 release, you can configure the framework to launch rings that include the information Cassandra needs to perform multi-datacenter replication.
Why is multi-datacenter configuration useful?
Cassandra is a distributed database that runs on multiple nodes to provide high availability. This avoids a single point of failure, where the database's ability to serve data could be taken offline if a single node fails.
However, in many scenarios, datacenter operators want to protect against instances where several nodes co-located either on the same physical rack or in the same physical datacenter all fail simultaneously. By configuring Cassandra nodes to be rack- and datacenter-aware, Cassandra attempts to replicate data in an intelligent manner to mitigate against rack and datacenter failures. By default, applications writing to a rack- and datacenter-aware cluster receive successful write confirmation only if write quorum is achieved within the datacenter. (For more details on write consistency levels, see the
Cassandra documentation.)
Enabling Datacenter Awareness with Cassandra-Mesos
An alpha version of Cassandra-Mesos is available in the Mesosphere Universe and can be easily installed onto a DCOS cluster. Please see
the Cassandra service tutorial to learn how to set up your own Cassandra-Mesos installation on the Mesosphere Datacenter Operating System.
In a future release, Cassandra-on-Mesos will schedule tasks on specific racks in specific datacenters, allowing fine-grained control over automated replication between racks and between datacenters in distant locations.