I’m wanting to upgrade from 2.0 to 2.1. The upgrade instructions at http://docs.datastax.com/en/upgrade/doc/upgrade/cassandra/upgradeCassandraDetails.html has the following, which leaves me with more questions than it answers:
If your cluster does not use vnodes, disable vnodes in each new cassandra.yaml before doing the rolling restart. In Cassandra 2.0.x, virtual nodes (vnodes) are enabled by default. Disable vnodes in the 2.0.x version before upgrading. 1. In the cassandra.yaml<http://docs.datastax.com/en/upgrade/doc/upgrade/cassandra/upgradeCassandraDetails.html#upgradeCassandraDetails__cassandrayaml_unique_7> file, set num_tokens to 1. 2. Uncomment the initial_token property and set it to 1 or to the value of a generated token<http://docs.datastax.com/en/cassandra/2.1/cassandra/configuration/configGenTokens_c.html> for a multi-node cluster. It seems strange that vnodes has to be disabled to upgrade, but whatever. If I use an initial token generator to set the initial_token property of each node, then I assume that my token ranges are all going to change, and that there’s going to be a whole bunch of streaming as the data is shuffled around. The docs don’t mention that. Should I wait until the streaming is done before proceeding with the upgrade? The docs don’t talk about vnodes and initial_tokens post-upgrade. Can I turn vnodes back on? Am I forever after stuck with having to have manually generated initial tokens (and needing to have a unique cassandra.yaml for every node)? Can I just set num_tokens = 256 and comment out initial_token and do a rolling restart? Thanks in advance Robert