在多数据中心群集中使用GoogleCloudSnitch时,应该将cassandra-rackdc.properties中的dc_suffix设置为什么?

时间:2018-04-17 16:13:48

标签: cassandra

https://docs.datastax.com/en/cassandra/3.0/cassandra/architecture/archSnitchGoogle.html?hl=googlecloudsnitch

根据Cassandra的这些文档,当使用多个数据中心时,每个节点的cassandra-rackdc.properties应该设置其dc_suffix。但是,如果后缀可以是任意的或者应该与某些内容相关,则它不是非常具体。请有人详细说明一下吗?

我们的情况是我们将设置一个九节点集群并使用GoogleCloudSnitch。对于这个问题,我们可以假设我们的集群如下所示:

  • 地区:europe-west1,区域:b,c,d(每个区域一个节点)
  • 地区:europe-west2,区域:a,b,c(每个区域一个节点)
  • 地区:europe-west3,区域:a,b,c(每个区域一个节点)

密钥空间将在所有数据中心使用NetworkTopologyStrategy和复制3。

上面链接中的文档声明数据中心名称区分大小写,因此我认为它应该是例如" dc_suffix = B"对于europe-west1中的b-zone节点,依此类推,即使docs中的示例显示任意名称。只是希望它得到确认,所以我在这方面正确思考,什么是正确的dc_suffix?

1 个答案:

答案 0 :(得分:1)

TLDR;

  

如果您使用,则无需显式设置rackdc.properties文件   “GoogleCloudSnitch”。相反,你只需要这个   “GossipingPropertyFileSnitch”。

您的理解是正确的,在rackdc.properties文件中,“dc”和“Rack”的值都可以是任意的。但重要的是要意识到群集中每个节点的“dc”值决定了它们属于哪个数据中心。类似地,“Rack”表示机器所在机架的“dc”。

所以在你的情况下,“dc”将是“europe-west1”/“europe-west2”/“europe-west3”来配置3个DataCenters。并且“Rack”值分别为“a”/“b”/“c”/“d”。以这种方式配置rackdc.porperties文件会使您的“nodetool status”输出看起来像

    Datacenter: europe-west1
    =======================
    Status=Up/Down
    |/ State=Normal/Leaving/Joining/Moving
    --  Address    Load       Tokens  Owns    Host ID                               Rack
    UN  127.0.0.1  47.66 KB   1       33.3%   aaa1b7c1-6049-4a08-ad3e-3697a0e30e10  b
    UN  127.0.0.2  47.67 KB   1       33.3%   1848c369-4306-4874-afdf-5c1e95b8732e  c
    UN  127.0.0.3  47.67 KB   1       33.3%   49578bf1-728f-438d-b1c1-d8dd644b6f7f  d

    Datacenter: europe-west2
    =======================
    Status=Up/Down
    |/ State=Normal/Leaving/Joining/Moving
    --  Address    Load       Tokens  Owns    Host ID                               Rack
    UN  127.0.0.4  47.66 KB   1       33.3%   aaa1b7c1-6049-4a08-ad3e-3697a0e30e10  a
    UN  127.0.0.5  47.67 KB   1       33.3%   1848c369-4306-4874-afdf-5c1e95b8732e  b
    UN  127.0.0.6  47.67 KB   1       33.3%   49578bf1-728f-438d-b1c1-d8dd644b6f7f  c

    Datacenter: europe-west3
    =======================
    Status=Up/Down
    |/ State=Normal/Leaving/Joining/Moving
    --  Address    Load       Tokens  Owns    Host ID                               Rack
    UN  127.0.0.1  47.66 KB   1       33.3%   aaa1b7c1-6049-4a08-ad3e-3697a0e30e10  a
    UN  127.0.0.2  47.67 KB   1       33.3%   1848c369-4306-4874-afdf-5c1e95b8732e  b
    UN  127.0.0.3  47.67 KB   1       33.3%   49578bf1-728f-438d-b1c1-d8dd644b6f7f  c

但如果您使用“GossipingPropertyFileSnitch”,则需要使用rackdc.properties文件的此配置。

使用“GoogleCloudSnitch”您无需明确配置此文件,仍可免费获得Rack和DC信息的好处。因为这个告密者告诉Cassandra自动推断出DC和Rack值。