在现有的Cassandra集群中添加节点

时间:2012-07-30 10:09:39

标签: java cassandra

我创建了一个现在有2个节点的集群。我想为它添加另一个节点,以便它成为一个3节点集群。我已经阅读了datastax的文档。我想知道,当我添加第3个节点时,是否必须更改前2个节点的令牌值,我是否必须再次启动集群?
另外我想知道,除了基本设置(监听地址,rpc地址,令牌,种子)之外,我还需要更改其他任何内容。

1 个答案:

答案 0 :(得分:1)

如果在不更改令牌的情况下向单节点群集添加单个新节点,则最终会有一个节点拥有50%的密钥,2个节点拥有25%的每个节点。相反,当您将新节点联机时,应指定初始令牌(在cassandra.yaml中)。然后,您应该使用nodetool move在节点2上移动令牌,然后使用nodetool cleanup删除任何不需要的数据。

您应该使用以下令牌:

Node 1: 0 -- should already be set
Node 2: 56713727820156407428984779325531226112 -- will require the move
Node 3: 113427455640312814857969558651062452224 -- will be set using initial token