【问题标题】:Exception encountered during startup: Unable to gossip with any seeds启动过程中遇到异常:无法使用任何种子进行八卦
【发布时间】:2014-11-28 19:25:52
【问题描述】:

我对 cassandra 很陌生,我正在尝试在我的家庭虚拟机中设置一个 2 节点集群...我有 2 台机器启动并运行

            NAME  -  IP Address
machine#1 - cassa - 192.168.1.200
machine#2 - cassa2 - 192.168.1.201

我已经在 1 号机器上启动并运行了 cassandra,但是现在当我尝试在 2 号机器上启动 cassandra 时,我发现低于 msg

http://pastebin.com/qsRraVb5

这是机器#1 上发生的变化

cluster_name: 'demo'
data_file_directories:
    - /home/cass/cassandra/data
commitlog_directory: /home/cass/cassandra/commitlog
saved_caches_directory: /home/cass/cassandra/saved_caches
seed_provider:
    - class_name: org.apache.cassandra.locator.SimpleSeedProvider
      parameters:
          - seeds: "192.168.1.200"
listen_address: 192.168.1.200
rpc_address: 192.168.1.200

这是来自机器#2的东西

cluster_name: 'demo'
data_file_directories:
    - /home/cass/cassandra/data
commitlog_directory: /home/cass/cassandra/commitlog
saved_caches_directory: /home/cass/cassandra/saved_caches
seed_provider:
    - class_name: org.apache.cassandra.locator.SimpleSeedProvider
      parameters:
          - seeds: "192.168.1.200"
listen_address: 192.168.1.201
rpc_address: 192.168.1.201

知道我在这里缺少什么吗?

如您所见,我可以从机器#2 ping 机器#1(我的种子节点)

[cass@cassa2 cassandra]$ ping 192.168.1.200
PING 192.168.1.200 (192.168.1.200) 56(84) bytes of data.
64 bytes from 192.168.1.200: icmp_seq=1 ttl=64 time=1.20 ms
64 bytes from 192.168.1.200: icmp_seq=2 ttl=64 time=0.170 ms
64 bytes from 192.168.1.200: icmp_seq=3 ttl=64 time=0.167 ms
^C
--- 192.168.1.200 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2495ms
rtt min/avg/max/mdev = 0.167/0.515/1.208/0.490 ms
[cass@cassa2 cassandra]$

【问题讨论】:

  • 只是想知道,但是您是否打开了此处列出的节点间和客户端端口?:datastax.com/documentation/cassandra/2.1/cassandra/security/…
  • 感谢您的评论,但我没有在它们之间运行防火墙......正如我提到的那样,我的 VMware 工作站上只有 2 台机器运行......它们之间没有防火墙......我可以毫无问题地从一台服务器 ssh 到另一台服务器...
  • @BryceAtNetwork23 .. 感谢您为我指明了正确的方向...禁用 linux 防火墙后,我能够启动并运行它...
  • 优秀。我会将我的评论转换为答案...

标签: cassandra cassandra-2.0


【解决方案1】:

确保 Cassandra 节点可以相互通信很重要,特别是在此处找到的节点内端口上:http://www.datastax.com/documentation/cassandra/2.1/cassandra/security/secureFireWall_r.html

即使您没有硬件防火墙,您的 Linux 服务器也可能带有类似 Uncomplicated FireWall 之类的东西:

sudo ufw allow 8888
sudo ufw allow 7000
sudo ufw allow 7001
sudo ufw allow 7199
sudo ufw allow 9042
sudo ufw allow 9160
sudo ufw allow 61620
sudo ufw allow 61621

这些是我在 Ubuntu 12.04 上使用 UFW 打开端口时必须使用的命令。

【讨论】:

  • 小心这个。如果您要连接到远程机器并且需要端口 22 或 3989 (RDP) 并且只需启用 ufw,您将获得默认的家庭用户规则并将自己锁定在您的机器之外,除非您在重新启动之前允许 22 或 3989。
猜你喜欢
  • 1970-01-01
  • 2014-01-08
  • 2015-12-22
  • 2015-02-07
  • 2014-08-19
  • 2017-01-27
  • 2018-01-16
  • 1970-01-01
  • 2016-05-18
相关资源
最近更新 更多