Reputation: 80
Currently, I have a cluster Cassandra 2.1.13 with 5 nodes in only one datacenter. I m going to do maintenance operation in this cluster. I will do it node by node.
I imagine 3 scenarios below in different contexts :
Before shutdown the node, i execute nodetool cmd "disablegossip, disablehandoff and drain", to boost the node startup.
1 - if the node is down less than "max_hint_windows_in_ms", i can start the node without another action
2 - if the node is down more than "max_hint_windows_in_ms" and less than repair windows "gc_grace_seconds", i start the node with a full repair
3 - if the node is down more than repair windows, i replace the node to avoid resurection data.
Are theses scenarios correct ? If it was you what do you do ?
Upvotes: 2
Views: 419
Reputation: 16400
You could increase your gc_grace_seconds
before starting. If using post C* 3.0 id increase HH window as well, but for 2.1 thats not a good idea (more incase someone reads this in future).
A proper node shutdown will handle disabling and draining, but if you want to be sure, disable thrift and native transport before gossip/HH. Disabling gossip before the transport and your client application may still try to use that node as coordinator for requests which wont work after leaving cluster.
Upvotes: 2