如何在添加新节点时重新调整Cassandra中的数据?

时间:2017-06-17 09:33:59

标签: cassandra

我需要向Cassandra集群添加更多节点,但我不清楚如何根据文档正确执行此操作:

http://docs.datastax.com/en/cassandra/2.1/cassandra/operations/ops_add_node_to_cluster_t.html

如何知道群集是否正在使用vnodes?我们将它与num_tokens 256一起使用,我们只有3个节点。我想如果你有这个意味着我们有vnodes。

是否有一种简单的方法可以重新调整数据?

1 个答案:

答案 0 :(得分:2)

Cassandra 1.2及更高版本默认使用vnodes(256个vnodes),它将节点令牌分成多个子令牌,以均衡的方式均匀地分配给所有节点。

将为每个vnode分配一个令牌。因此,您可以在配置文件中或使用nodetool找到多少个vnode。

如你所说" num_tokens"告诉那个Cassandra节点中的vnode数量。

(或)

执行nodetool ring命令,该命令将列出群集中每个节点的令牌。

nodetool ring

建议使用能够平衡群集的vnodes。早于小于1.1的Cassandra版本没有vnode,因此我们用于生成令牌并在cassandra.yaml文件中提供的initial_token参数中配置。

因此,在Cassandra 1.2或更高版本中,使用vnode足以平衡群集,无需重新调整数据。