从另一个数据中心发现节点
Discover nodes from another datacenter
是否可以从 Cassandra 集群中的另一个数据中心发现节点列表?
假设我有以下信息:
- 我的 Cassandra 集群由多个数据中心组成(比如 "dc1" 和 "dc2")。
- 我知道其中一个节点的 IP 地址,例如来自数据中心 "dc1"。
使用 datastax
java 库,我尝试执行以下操作:
直接从 system.peers
table 中读取同行列表 - 但它 returns 只是其中的几个(它是以一致性级别读取的 ALL
), 都属于"dc1";
使用 cluster.getMetada().getAllHosts()
- 但它 returns 我只有 "dc1".
内的完整主机列表
如果不知道来自 "dc2" 的至少一个节点,似乎无法获得有关其他数据中心的信息。我错了吗?
DC应该至少有一个种子。
Attention: In multiple data-center clusters, include at least one node
from each datacenter (replication group) in the seed list.
https://docs.datastax.com/en/cassandra/3.0/cassandra/architecture/archGossipAbout.html
是否可以从 Cassandra 集群中的另一个数据中心发现节点列表?
假设我有以下信息:
- 我的 Cassandra 集群由多个数据中心组成(比如 "dc1" 和 "dc2")。
- 我知道其中一个节点的 IP 地址,例如来自数据中心 "dc1"。
使用 datastax
java 库,我尝试执行以下操作:
直接从
system.peers
table 中读取同行列表 - 但它 returns 只是其中的几个(它是以一致性级别读取的ALL
), 都属于"dc1";使用
cluster.getMetada().getAllHosts()
- 但它 returns 我只有 "dc1". 内的完整主机列表
如果不知道来自 "dc2" 的至少一个节点,似乎无法获得有关其他数据中心的信息。我错了吗?
DC应该至少有一个种子。
Attention: In multiple data-center clusters, include at least one node from each datacenter (replication group) in the seed list.
https://docs.datastax.com/en/cassandra/3.0/cassandra/architecture/archGossipAbout.html