Cassandra clustername不匹配

时间:2011-05-24 21:02:48

标签: nosql cassandra cluster-computing cassandra-0.7

我正在尝试将单个节点添加到名为ClusterA的现有群集中。 在引导此节点之前,它正在运行一个名为“Test”的单节点cassandra集群,其旧版本为0.7.4。 ClusterA运行0.7.5并且我已经将节点升级到0.7.5。我正确地配置了yaml,但是当我运行Cassandra时,我得到了垃圾邮件:

INFO 20:04:24,262 Logging initialized
 INFO 20:04:24,275 Heap size: 5156896768/5156896768
 INFO 20:04:24,276 JNA not found. Native methods will be disabled.
 INFO 20:04:24,284 Loading settings from file:/usr/local/bin/apache-cassandra-0.7.5/conf/cassandra.yaml
 INFO 20:04:24,380 DiskAccessMode 'auto' determined to be mmap, indexAccessMode is mmap
 INFO 20:04:24,511 Creating new commitlog segment /var/lib/cassandra/commitlog/CommitLog-1306267464511.log
 INFO 20:04:24,525 Couldn't detect any schema definitions in local storage.
 INFO 20:04:24,525 Found table data in data directories. Consider using JMX to call org.apache.cassandra.service.StorageService.loadSchemaFromYaml().
 INFO 20:04:24,535 No commitlog files found; skipping replay
 INFO 20:04:24,553 Upgrading to 0.7. Purging hints if there are any. Old hints will be snapshotted.
 INFO 20:04:24,556 Cassandra version: 0.7.5
 INFO 20:04:24,556 Thrift API version: 19.4.0
 INFO 20:04:24,556 Loading persisted ring state
 INFO 20:04:24,558 Starting up server gossip
 INFO 20:04:24,588 Enqueuing flush of Memtable-LocationInfo@1048095360(233 bytes, 4 operations)
 INFO 20:04:24,589 Writing Memtable-LocationInfo@1048095360(233 bytes, 4 operations)
 INFO 20:04:24,794 Completed flushing /var/lib/cassandra/data/system/LocationInfo-f-1-Data.db (341 bytes)
 INFO 20:04:24,822 Joining: getting load information
 INFO 20:04:24,823 Sleeping 90000 ms to wait for load information...
 WARN 20:04:24,885 ClusterName mismatch from /10.44.2.58 Test !=ClusterA
 WARN 20:04:24,886 ClusterName mismatch from /10.44.2.58 Test !=ClusterA
 WARN 20:04:24,886 ClusterName mismatch from /10.44.2.58 Test !=ClusterA
 WARN 20:04:24,886 ClusterName mismatch from /10.44.2.58 Test !=ClusterA
 WARN 20:04:24,887 ClusterName mismatch from /10.44.2.58 Test !=ClusterA

新的yaml中的任何地方都不存在此IP。这是我之前尝试实现的旧配置,但我尝试使用此ip进行集群。 我尝试删除所有存储,db文件和旧配置,但它仍然以某种方式检测到旧的种子IP。

当我确认数据目录为空时,我发现这很奇怪。

在数据目录中找到表格数据......

有谁能告诉我这是如何在启动时出现的?我需要更改/删除/删除此IP才能消失?

感谢。

2 个答案:

答案 0 :(得分:1)

请参阅http://wiki.apache.org/cassandra/FAQ#clustername_mismatch,其中包含:

  

“为防止操作员错误,Cassandra   将群集的名称存储在其中   系统表。如果你需要重命名一个   由于某种原因,集群是安全的   删除system / LocationInfo *之后   强迫所有人压缩   ColumnFamilies(使用旧群集   name)如果你已经指定了节点的话   配置文件中的令牌,或者如果您   不关心保留节点   令牌(例如在单个节点中   集群。)“

答案 1 :(得分:0)

尝试使用cassandra nodetool禁用对此(不需要的)节点的闲话。

  1. 转到cassandra / bin目录
  2. 说“nodetool -h ip_creating_issue disablegossip”
  3. 尝试使用nodetool的其他选项,例如“decommission”

    禁用八卦对我来说很好。