2011-11-22 106 views
3

我们在EC2上有6个节点的cassandra群集,我们必须将其容量加倍为12个节点。 所以要添加6个更多的节点,我遵循以下步骤。无法将节点添加到现有Cassandra群集

1计算12个节点的标记并相应地配置新节点。

2通过适当的配置开始新的节点,使他们新的节点将平分 现有令牌范围。

  • 在开始时所有的新节点都显示在 流的进展。
  • 在响铃状态下,所有节点都处于“加入”状态
  • 12小时后,2个节点完成流并进入正常状态。
  • 但剩下的4个节点上的数据流一定量后,他们都没有显示任何进展,看起来他们在每个停留

我们已经安装了卡桑德拉-0.8.2,并有大约500 GB的数据现有节点并在EBS卷上存储数据。

如何解决此问题并获得12个节点的平衡群集?

我可以重新启动节点吗?

如果我清理卡住卡桑德拉节点的数据目录,并与全新安装重启后,会造成任何数据丢失?

回答

3

如果复制因子2或更大,则不会有任何数据丢失。

Cassandra 0.8.2版有几个已知问题 - 请在所有原始节点以及新出现的节点上升级到0.8.8,然后为未完成的节点启动过程。

而且,要知道,存储在EBS卷数据是坏主意

http://www.mail-archive.com/[email protected]/msg11022.html

0

虽然这不会直接回答你的问题,希望这点你在正确的方向:

有上freenode.org一个相当活跃#cassandra IRC通道。

0

所以这是为什么我们的一些节点被卡的答案。

1)我们从卡桑德拉-0.7.2升级到cassandra0.8.2

2)我们加载与的SSTable装载机实用

3)sstables但一些数据的一些列从hadoop工作直接插入家庭。 由于我们没有升级hadoop中的cassandra api,这些列系列的数据显示了其他一些版本。

4)由于这个版本不匹配卡桑德拉抛出“版本不匹配异常”,并终止流

5)所以对于这个解决方案是使用“nodetool擦洗密钥空间的ColumnFamily”。我已经使用这个,我的问题解决了

因此,这里主要的是,如果要升级的卡桑德拉集群能力ü必须做到nodetool擦洗

相关问题