For testing here and describing the question simple, I used two nodes to
build a cassandra(2.1.11) cluster (192.168.56.110 and 192.168.56.111), Now
I added one additional node(192.168.56.112) to this cluster, and I hope my
new ring balanced through using nodetool move command, but when I using the
following steps:

   1.

   Getting the 192.168.56.110's all token range, such as 981588427421702712
   -- 1007755089748978774
   2.

   Getting the new node's all token range, such as 5458173168911717635 --
   5458821955945522089
   3.

   I executed the command:

    [root@test-1 pengcz]# ../cassandra-2.1.11/bin/nodetool  -h
192.168.56.110 -u admin -pw   admin4587 move 5458173168911717635
    error: target token 5458173168911717635 is already owned by another node.
    -- StackTrace --
    java.io.IOException: target token 5458173168911717635 is already
owned by another node.

   According to the article Load balancing
   <https://wiki.apache.org/cassandra/Operations> said: If you add nodes to
   your cluster your ring will be unbalanced and only way to get perfect
   balance is to compute new tokens for every node and assign them to each
   node manually by using nodetool move command., I think I seemly
   understood nodetool move command wrong, But I don't know how to
   understand it and balance the new cluster? Any advice will be appreciated!

Dillon

Reply via email to