You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by 土卜皿 <pe...@gmail.com> on 2016/01/26 06:50:20 UTC

How to make the new cassandra cluster balanced after adding one or more nodes?

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

Re: How to make the new cassandra cluster balanced after adding one or more nodes?

Posted by Alain RODRIGUEZ <ar...@gmail.com>.
Hi Dillon,

I advise you to keep writing in the same thread as long as it is about the
same issue, to avoid spreading information. I answered your first email :-).

C*heers,

-----------------
Alain Rodriguez
France

The Last Pickle
http://www.thelastpickle.com

2016-01-26 6:50 GMT+01:00 土卜皿 <pe...@gmail.com>:

> 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
>