Hi Voytek, We moved a large number of clusters from Rackspace to Google, doing it in a similar way to you are suggesting, so to answer your questions:
1) We created the nodes first with seeds from just the original datacenters, then updated the seed list to include seeds from the new DC afterwards. 2) Don’t create the keyspace again, it will be there already, but with no data until you change the replication factor for the keyspace. Once you have done this you will need to do a nodetool rebuild on the new nodes to stream the data to the new DC. 3) We kept auto_bootstrap to true, but only changed the replication factor of the system keyspaces before creating the new nodes, therefore the bootstrapping was quick, and the real data was streamed later during the nodetool rebuild. 4) We just kept the GossipingPropertyFileSnitch, this allows you the most flexibility, and allows you to change cloud providers later. We presented how we did this at Datastax Accelerate earlier in the year, and although that presentation is not yet online, I also created a series of blogs posts that shows our steps in detail, I recommend reading these as it is the combined learnings of moving 90+ clusters: http://www.redshots.com/accelerate/ <http://www.redshots.com/accelerate/> Happy to answer any more questions. Regards Paul Chandler www.redshots.com > On 26 Jun 2019, at 16:19, Voytek Jarnot <voytek.jar...@gmail.com> wrote: > > I started an higher-level thread years ago about moving a cluster by > expanding from 1 to 2 datacenters, replicating over, then decommissioning the > original DC. Corporate plans being what they are, we're finally getting into > this; I'm largely following the writeup here: > https://docs.datastax.com/en/archived/cassandra/3.0/cassandra/operations/opsAddDCToCluster.html > > <https://docs.datastax.com/en/archived/cassandra/3.0/cassandra/operations/opsAddDCToCluster.html> > , but have a few more-specific questions: > > current setup: 1 DC, 4 nodes, RF=3, 1 keyspace > new DC will be 4 nodes as well, RF=3 > > 1) We currently have 2 seed nodes, I'd like to confirm that the correct > course is to make 1-2 (let's say 2) of the new-DC nodes seeds as well, and > update all nodes in both DCs to point at all 4 seeds before I get into > altering the keyspace. > > 2) Prior to altering the replication on my keyspace to include the new DC, I > do not need/want to create the keyspace in the new DC, correct? > > 3) The datastax docs mention the auto_bootstrap=false setting, but don't go > into much detail - I'm leaning toward setting it to false on all the new > nodes, sound reasonable? > > 4) One of the three environments in which this'll happen is slightly more > complicated due to the existing DC living in AWS, whereas the new DC will be > in a different AZ. Do I need to get into switching from > GossipingPropertyFileSnitch to Ec2MultiRegionSnitch? If so, could someone > shed a bit of light on that process, and the associated changes needed for > listen_address and broadcast_address? > > Thanks for getting this far, > Voytek Jarnot