Here's my understanding for best practices around cluster rebalancing using DSE & opscenter
1. Initial setup- The first time you are setting up a cluster, with known plan for data centers and number of nodes, calculate initial tokens using token generating tool and set it in the yaml files. Bring up a balanced cluster
2. Expanding capacity- Once the cluster is live, and you want to add one or 2 nodes to increase capacity, you can leave the initial token blank. Cassandra will assign it a token so that it bisects the heaviest loaded nodes token range. To make it perfectly balanced, use opscenter rebalance.
1. Will it internally cater for different scenarios like doubling the capacity of the ring etc as mentioned in Calculating Tokens For the New Nodes section of this link http://www.datastax.com/docs/1.0/operations/cluster_management
Will it attempt to have the least number of changes in token required ?
2. Will it internally do nodetool move tokens & nodetool cleanup wherever required?
3. Will nodetool cleanup happen simultaneously or at a later time when the load is lower?
3. Removing capacity- Once the cluster is live, and you want to remove nodes, you choose decommision node in opscenter.
1. will this automatically result in a balanced cluster, or do you need to do a Rebalance explicitly?
For scenarios 2 and 3 the other options are to do nodetool commands like move and cleanup manually. Do we lose any flexibility or performance benefits by using opscenter rebalance ?