Closed gaahrdner closed 9 years ago
How did you double your cluster? Why did you use your own script if Priam has the REST API for doubling? There is a code in Priam that has the logic to generate the tokens and you can read that to double-check on the token list. The code is located at:
priam/src/main/java/com/netflix/priam/utils/TokenManager.java
Hi @timiblossom, as I mentioned, the script I wrote just calls the Priam REST API on one cluster member, and then makes an API call to AWS to enlarge the auto-scaling group that the cluster resides in. Is this not the correct way to double a cluster? I'm pretty sure I gleaned it off of some mailing list that I can not currently locate, sorry.
@gaahrdner here is the line where we compute the tokens:
You can read the code and take a look at the Priam's generated tokens. According to the code, a token can't never be greater than 2^127.
I don't work for the company that was using this anymore, so I'm gonna close this issue.
Hi y'all, kind of at a loss here. Using Priam v2.0.8.39 with DataStax Enterprise 4.5.1 and have been trying to leverage Priam's great capabilities as a management/admin tool. I've written a script that calls the double_ring endpoint on a cluster, and then will double the size of the auto scaling group for a cassandra cluster. Without fail, one newly created node will be unable to start up, as the token will be too large. Here's a log snippet from the failing node:
This happens without fail, regardless of the size of the starting cluster or it's data store size, so the new cluster is always coming up unbalanced, i.e. from 3 -> 5 nodes instead of 6.
Sadly I've no real idea how to fix this; I can confirm the offending token is generated by Priam and placed into SimpleDB, so in my mind the problem lies in either how Priam initially generates the new tokens or DataStax's Cassandra version is mucking with the aforementioned calculation.
Thoughts? I'd love to get this resolved and am happy to help as I can.