We had a similar situation and what we did was first migrate the 1.1 cluster to GossipingPropertyFileSnitch, making sure that for each node we specified the correct availability zone as the rack in the cassandra-rackdc.properties. In this way, the GossipingPropertyFileSnitch is equivalent to the EC2MultiRegionSnitch, so the data location does not change and no repair is needed afterwards. So, if your nodes are located in the us-east-1e AZ, your cassandra-rackdc.properties should look like:


After this step is complete on all nodes, then you can add a new datacenter specifying different dc and rack on the cassandra-rackdc.properties of the new DC. Make sure you upgrade your initial datacenter to 1.2 before adding a new datacenter with vnodes enabled (of course).


On Sun, Feb 2, 2014 at 6:37 AM, Katriel Traum <katriel@google.com> wrote:
Hello list.

I'm upgrading a 1.1 cassandra cluster to 1.2(.13).
I've read here and in other places that the best way to migrate to vnodes is to add a new DC, with the same amount of nodes, and run rebuild on each of them.
However, I'm faced with the fact that I'm using EC2MultiRegion snitch, which automagically creates the DC and RACK.

Any ideas how I can go about adding a new DC with this kind of setup? I need these new machines to be in the same EC2 Region as the current ones, so adding to a new Region is not an option.


Paulo Motta

Chaordic | Platform
+55 48 3232.3200
+55 83 9690-1314