我创建了3个实例,其中3个弹性IP地址指向这些实例。
我做了一个安装dsc的yum: dsc12.noarch 1.2.13-1 @datastax
/etc/cassandra/default.conf/cassandra.yaml有: - 种子:[弹性IP列表]
但是当我通过“service cassandra start”启动cassandra时,我在/var/log/cassandra/cassandra.log中看到: ... 启动时遇到异常:无法联系任何种子! ... 果然“nodetool status”显示: 无法连接到'127.0.0.1:7199':拒绝连接
BUT: 如果我更改种子的值以使用实例的“私有IP”,cassandra就会很好地开始。我希望弹性IP可以正常工作,但事实并非如此。
你知道为什么吗?
我希望弹性IP工作的原因是我提前知道IP地址,因此当我使用Puppet配置机器时,我可以预先填充cassandra.yaml文件中的种子。在机器启动之前我不知道私有IP地址:(
这几乎与以下内容重复:Cassandra on Amazon EC2 with Elastic IP addresses
答案 0 :(得分:5)
我相信你的问题来自种子IP与节点的广播IP不同。要更改此项,请修改每个Cassandra.yamls中的以下行
# Address to broadcast to other Cassandra nodes
# Leaving this blank will set it to the same value as listen_address
broadcast_address: <node's elastic ip> #uncomment this line