See my recent post for some additional points. But I wanted to encourage you to look at the in-place upgrade on your existing hardware. No need to add a DC to try and upgrade. The cluster will handle reads and writes with nodes of different versions – no problems. I have done this many times on many clusters.
Also, I tell my teams there is no real back-out after we get the first node upgraded. This is because any new data is being written in the new sstable format (assuming the version has a new sstable format) – whether inserts or compaction. Any snapshot of the cluster pre-upgrade is now obsolete. Test thoroughly, then go forward as quickly as possible.
From: Devaki, Srinivas <email@example.com>
I have planned out our org's cassandra upgrade plan and want to make sure if it seems fine.
Details Existing Cluster:
* Cassandra 2.2.4
* 8 nodes with 32G ram and 12G max heap allocated to cassandra
* 4 nodes in each rack
1. Ensured all clients to use LOCAL_* consistency levels and all traffic to "old" dc
2. Add new cluster as "new" dc with cassandra 2.2.4
2.1 update conf on all nodes in "old" dc
2.2 rolling restart the "old" dc
3. Alter tables with similar replication factor on the "new" dc
4. cassandra repair on all nodes in "new" dc
5. upgrade each node in "new" dc to cassandra 3.11.3 (and upgradesstables)
6. switch all clients to connect to new cluster
7. repair all new nodes once more
8. alter tables to replication only on new dc
9. remove "old" dc
and I have some doubts on the same plan
D1. can i just join 3.11.3 cluster as "new" dc in the 2.2.4 cluster?
D2. how does rolling upgrade work, as in within the same cluster how can 2 versions coexist?
Will be grateful if you could review this plan.
PS: following this plan to ensure that I can revert back to old behaviour at any step
SRE/SDE at Zomato
The information in this Internet Email is confidential and may be legally privileged. It is intended solely for the addressee. Access to this Email by anyone else is unauthorized. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it, is prohibited and may be unlawful. When addressed to our clients any opinions or advice contained in this Email are subject to the terms and conditions expressed in any applicable governing The Home Depot terms of business or client engagement letter. The Home Depot disclaims all responsibility and liability for the accuracy and content of this attachment and for any damages or losses arising from any inaccuracies, errors, viruses, e.g., worms, trojan horses, etc., or other items of a destructive nature, which may be contained in this attachment and shall not be liable for direct, indirect, consequential or special damages in connection with this e-mail message or its attachment.