Netflix/Priam — pull request #265 by aryanet (2013-09-03 22:32:25+00:00)
Title: Decoupled DC from Region

Priam is built based on the assumtion that C*'s notion of DC will
always be the AWS region. This limits use cases where we want to have
two Datacenters simulated in one AWS region for different purposes like
one being OLAP and another OLTP. There has been some work done on
integration of DSE. This patch can do what DSE patch does, however it
just addreses the decoupling of DC and Region by separating their
definition in the IConfiguration. You don't have to have DSE to run two
datacenters in one AWS region. Furthermore, it uses a new
configuration parameter called dc_suffix (see CASSANDRA-5155) to emulate different DC
in the same AWS region like DSE. I did not add automatic propagation of
rackdc.properties file as it conflicts with the DSE.

Add Suffix to RAC

Priam uses availability zone's full string (us-east-1) as RAC inside its
configuration. Further this information is used for token computation
and figuring our if nodes belong to the same RAC. We should namespace
this field by DC suffix as well to make it unique accross all DCs.

To properly use this feature, you need to make sure you also suffic the
zone names in your PriamProperties with the suffix you specify in the
configuration. For example if the suffix is _ssd and your zones are

us-east-1a,us-east-1b,us-east-1c

they should become

us-east-1a_ssd,us-east-1b_ssh and us-east-1c_ssd