cassandra 2.1将snitch从ec2snitch更改为gossipingpropertyfilesnitch

vaj7vani  于 2021-06-15  发布在  Cassandra
关注(0)|答案(1)|浏览(320)

目前,我们在一个aws区域中使用了使用两个AZ的ec2snitch。目标是提供弹性,即使一个az不可用。大多数数据都是以rf=2进行复制的,因此每个az都会基于ec2snitch获得一个副本。
现在我们得出一个结论,转移到八卦财产文件告密。主要原因是,我们已经意识到一个az崩溃是一个远程事件,即使它发生了,在我们的堆栈中还有其他系统不支持这个;所以最终整个应用程序都会崩溃。
另一个原因是,使用ec2snitch和两个az时,我们必须按2的因子进行缩放(每个az中有一个)。对于gossipingpropertyfilesnitch,只需使用一个机架,我们就可以按1的比例缩放。
当我们改变这个告密设置时,拓扑结构会改变吗?我想避免运行nodetool修复。我们总是在运行nodetool repair时失败,而且它会永远运行。

ubbxdtey

ubbxdtey1#

拓扑是否更改取决于您执行更改的方式。如果为节点分配与当前配置相同的逻辑dc和rack,则不应更改拓扑。
更新到后,必须将机架与az匹配 GossipingPropertyFileSnitch . 您需要执行滚动重新启动以进行重新配置。
例子 cassandra-rackdc.properties 对于穿过2个AZ的1个dc中的2个节点:


# node=10.0.0.1, dc=first, AZ=1

dc_suffix=first

# Becomes

dc=first
rack=1

# node=10.0.0.2, dc=first, AZ=2

dc_suffix=first

# Becomes

dc=first
rack=2

另一方面,你需要探索为什么维修失败。不幸的是,它们对集群健康非常重要。

相关问题