2014-12-02 102 views
4

我在尝试但未能将新的(旧的,但已被擦除的)节点加入到现有集群中。卡桑德拉2.1.2节点卡在加入集群上

当前群集由2个节点组成,运行C * 2.1.2。我使用2.1.2启动第三个节点,它进入加入状态,启动它,即传输一些数据,如nodetool netstats所示,但一段时间后,它会卡住。从这一点起,没有任何东西可以流式传输,新节点保持连接状态。我重新启动节点两次,每次流传输更多数据,但后来再次卡住。 (我目前正在进行第三轮比赛)。

其他事实:

  • 我没有看到任何节点上的日志中的任何错误。
  • 连接看起来很好,我可以ping通,netcat到端口7000的所有方式。
  • 我有267 GB负载每个运行节点,复制2,16令牌。
  • 现在新节点的负载大约为100GB
  • 我猜测节点在重新启动几轮之后,最终会吸收来自运行节点的所有数据并加入群集。但绝对不是它应该工作的方式。

编辑:我发现了一些更多的信息:

  • 引导过程中的流媒体的一些表的中间站,总是

    正好将一些的SSTable的10MB,如:

    $ nodetool netstats | grep -P -v "bytes\(100" Mode: NORMAL Bootstrap e0abc160-7ca8-11e4-9bc2-cf6aed12690e /192.168.200.16 Sending 516 files, 124933333900 bytes total /home/data/cassandra/data/leadbullet/page_view-2a2410103f4411e4a266db7096512b05/leadbullet-page_view-ka-13890-Data.db 10485760/167797071 bytes(6%) sent to idx:0/192.168.200.16 Read Repair Statistics: Attempted: 2016371 Mismatch (Blocking): 0 Mismatch (Background): 168721 Pool Name Active Pending Completed Commands n/a 0 55802918 Responses n/a 0 425963

我无法诊断错误&我会很感激任何帮助!

+2

您在加入过程中是否一直在观看JVM?堆是否被充分利用,并且您是否看到C *日志中存在长时间的GC? – RussS 2014-12-02 22:56:22

+0

在将其添加回去之前是否已解除节点的使用?八卦偶尔会记住节点,并在稍后将节点添加回来时导致麻烦。 – mildewey 2014-12-03 18:18:17

+1

@RussS,是的,我看着它。它看起来很好。堆使用率达到最大值,但是它会正确地将CMS修改为1GB。 – zarzyk 2014-12-05 18:26:12

回答

1
  1. 尝试使用正确的端口从一个节点telnet到另一个节点。
  2. 确保您加入了正确的名称群集。
  3. 尝试使用:nodetool修复
  4. 您可能会ping外部IP寻址,并且您的群集使用内部IP地址进行通信。
  5. 如果您正在亚马逊AWS上运行,请确保您的内部IP地址上都有防火墙打开。