Datastax - Cassandra Amazon EC2多区域设置 - 具有3个节点的群集

时间:2016-06-14 10:24:32

标签: amazon-ec2 cassandra datastax

我已经启动了3个Amazon EC2实例并设置了数据存储cassandra,如下所示

1.Region - US EAST:

cassandra.yaml - 配置

a.listen_address作为此实例的私有IP

b.broadcast_address作为此实例的公共IP

c.seeds为50.XX.XX.X1,50.XX.XX.X2(node1的public-ip,node2的public-ip)

cassandra-rackdc.properties - 配置

DC = DC1

机架= RAC1

dc_suffix = US_EAST_1

2.Region - US WEST:

我做了与上面相同的程序。

3.Region - 欧盟爱尔兰:

以上配置的结果是

所有节点单独运行良好。但是当我做的时候

所有三个节点上的

$ nodetool status

它仅列出本地节点。

我试图实现以下目标。

1。在三个不同的区域启动3个cassandra节点。比如说,US-EAST,US-WEST,EU-IRELAND。

  1. 使用以下配置或方法

    a.Ec2MultiRegionSnitch

    b.Replication staragey as SimpleStrategy

    c。复制因子为3

    d。阅读&写作级别为QUORUM。

  2. 我希望只获得一件事,即如果任何两个区域关闭或节点中的任何两个关闭,我可以通过重命名一个节点来生存。

  3. 我的问题是

    我在哪里犯了错误?以及如何达到我的要求?

    非常感谢任何帮助或投入。

    感谢。

2 个答案:

答案 0 :(得分:1)

这对cassandra 3.0来说是对我有用的

endpoint_snitch: Ec2MultiRegionSnitch
listen_address: <leave_blank>
broadcast_address: <public_ip_of_server>
rpc_address: 0.0.0.0
broadcast_rpc_address: <public_ip_of_server>
-seed: "one_ip_from_other_DC"

答案 1 :(得分:0)

最后,我找到了解决问题的方法。我使用复制策略作为SimpleStrategy,因此我不需要配置 cassandra-rackdc.properties

有一次,我从所有节点删除了文件cassandra-rackdc.properties,Everything按预期工作。

由于