Cassandra 无法将令牌数从256更改为1
我有一个3节点的cassandra集群,在我的种子上,num_标记被设置为256。我试图将其设置为1或注释掉…但每次启动cassandra时,我都会出现以下错误:Cassandra 无法将令牌数从256更改为1,cassandra,Cassandra,我有一个3节点的cassandra集群,在我的种子上,num_标记被设置为256。我试图将其设置为1或注释掉…但每次启动cassandra时,我都会出现以下错误: ERROR 21:28:08 Fatal configuration error org.apache.cassandra.exceptions.ConfigurationException: Cannot change the number of tokens from 256 to 1 我还做了一个rm-rf/var/l
ERROR 21:28:08 Fatal configuration error
org.apache.cassandra.exceptions.ConfigurationException: Cannot change the number of tokens from 256 to 1
我还做了一个rm-rf/var/lib/cassandra/*
我还试图进入cql中的
system.local
,删除令牌
字段中的所有内容,但我无法做到。如何更改此属性?请按照以下步骤解决此问题:
步骤1-计算节点的令牌(用有效值替换所有出现的“数量\u of \u令牌”):
步骤2-重新配置cassandra.yaml中的令牌属性:
- 注释掉num_标记
- 设置令牌分配初始\u令牌
- 离开自动引导:true
- 数据文件目录(路径在cassandra.yaml配置文件中)
- 委员会日志
- 已保存的缓存
因为您正在清理您的
/var/lib/cassandra
目录,所以我假设您在这个集群中没有有价值的数据(或者至少有其他副本可以从中传输)。如果是这种情况,请确保同时删除数据
目录和提交日志
目录,并为节点提供集群中当前节点的种子。节点应使用新配置进行引导。
python -c 'print [str(((2**64 / number_of_tokens) * i) - 2**63) for i in range(number_of_tokens)]'