更新 - 短版本:
的PropertyFileSnitchcassandra-topology.properties
用于第一3个节点(机架1-3)指出,只有这些节点在DC1,其余的是在DC2通过指定默认值default=DC2:r1
。当通过添加节点4和5来扩大集群时,这些节点的PropertyFileSnitch被配置为将它们添加到DC1以及机架4和5中,但是来自前3个节点的滑环保持不变并且因此集群是在这种不一致的状态。不平衡卡桑德拉簇
我的问题是否该群集可以重新平衡(固定)。在修复cassandra-topology.properties
后,如果我进行了完整的群集重启,是否就足够了?
请告诉我如何安全地重新平衡集群。
加长版:
我是新来卡桑德拉和我开始了一个已建成的集群上运行。
我在运行Cassandra 3.0.5版的不同机架上的相同数据中心中有5个节点,其中vnodesnum_tokens: 256
以及与replication = {'class': 'NetworkTopologyStrategy', 'DC1': '3'} AND durable_writes = true
的密钥空间。
从历史上看,只有3个节点,并且该集群被扩展了2个附加节点。我有一个自动修复脚本,运行nodetool repair
,并带有选项parallelism: parallel, primary range: false, incremental: true, job threads: 1
。
插入大量数据后,问题开始出现。在节点4或5上运行修复脚本时,节点2会超载:CPU使用率保持在100%,MutationStage队列增长,并且GC暂停至少需要1s,直到Cassandra进程最终死亡。修复结果通常为failed with error Stream failed (progress: 0%)
。
当运行在节点1,2或3的nodetool status
指令I得到以下输出: Datacenter: DC2 Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 10.0.0.13 10.68 GB 256 0.0% 75e17b8a r1 UN 10.0.0.14 9.43 GB 256 0.0% 21678ddb r1 Datacenter: DC1 Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 10.0.0.10 16.14 GB 256 100.0% cf9d327f Rack1 UN 10.0.0.11 22.83 GB 256 100.0% e725441e Rack2 UN 10.0.0.12 19.66 GB 256 100.0% 95b5c8e3 Rack3
但在节点4或5运行nodetool status
命令时,我得到以下输出: Datacenter: DC1 Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 10.0.0.13 10.68 GB 256 58.9% 75e17b8a Rack4 UN 10.0.0.14 9.43 GB 256 61.1% 21678ddb Rack5 UN 10.0.0.10 16.14 GB 256 60.3% cf9d327f Rack1 UN 10.0.0.11 22.83 GB 256 61.4% e725441e Rack2 UN 10.0.0.12 19.66 GB 256 58.3% 95b5c8e3 Rack3
经过进一步调查,看起来在群集放大之后,在节点1,2和3(它们也是此群集的种子)上未更新PropertyFileSnitchcassandra-topology.properties
。
谢谢!
你说得对,**这是错误配置**。前3个节点(机架1-3)的* PropertyFileSnitch *'cassandra-topology.properties'表明,只有这些节点在DC1中,其他节点在DC2中通过指定默认值default = DC2:r1来实现。当通过添加节点4和5扩大集群时,这些节点的* PropertyFileSnitch *被配置为将它们添加到DC1以及机架4和5中,但前3个节点的滑环仍保持不变,因此集群在这种不一致的状态。我正试图找出如何安全地**重新配置它。 – alien5
感谢您指出IP错误,它在格式化帖子宽度时滑落。这些节点位于同一个数据中心并且可以互相访问。他们可以看到对方的负载,但由于配置不当导致负载分布不均。 – alien5