【问题标题】:PXC cluster across datacenter跨数据中心的 PXC 集群
【发布时间】:2018-04-18 01:23:22
【问题描述】:

我对 PXC 很陌生。我想知道我是否可以跨三个数据中心部署一个集群。例如:

  • 节点A在数据中心1
  • 节点B在数据中心2
  • 节点C在数据中心3

数据中心1 和数据中心2 之间的延迟很低,因为它们在同一个城市。数据中心3 离他们很远。

  • AB 都提供写入和读取功能
  • C 只是一个完整的备份并投票给AB 来决定哪一个是从不提供写入或读取的捐赠者。

  • AB 同步

  • CAB 异步。

捐赠者只能是AB。这种方式怎么配置?

【问题讨论】:

    标签: percona-xtradb-cluster


    【解决方案1】:

    您可以像这样跨 3 个数据中心部署 PXC。但是,您不能以这种方式配置 Percona XtraDB Cluster(或通用 Galera)行为。

    集群的所有成员一起工作。所有 WRITE 交易都会发送到所有节点,并且必须得到所有节点的确认(即:认证)。您的集群可以写入的最快速度是最慢节点的 RTT,在本例中为 C

    您可以将AB 配置为彼此的捐助者,以防其中一个出现故障。 (my.cnf:wsrep-sst-donor)

    您可能会混淆某些术语。 “捐赠者”是节点将数据副本 (IST/SST) 发送到另一个节点时的状态。如果您的集群处于Primary 状态,则不会发生“捐赠”。你在考虑领导选举吗?这在 PXC 中不存在。只有简单的法定人数存在。任何节点都可以读,任何节点都可以随时写;除非您在 MySQL 中手动设置 read_only=1,否则对此没有任何限制。

    您可以使用DC1: A, BDC2: CDC3: D 部署一个 3 节点 PXC,使用 MySQL 异步复制作为异地备份。您必须选择 A、B、C 之一作为异步复制的“主”(确保设置 GTID)。在此设置中,D 不会成为 PXC 的一部分,不会参与认证,也不会参与法定人数;它只能用作备份。

    【讨论】:

      猜你喜欢
      • 2017-09-24
      • 2016-03-15
      • 2018-12-07
      • 2015-08-02
      • 1970-01-01
      • 2021-06-01
      • 2020-07-27
      • 2021-12-19
      • 2015-03-25
      相关资源
      最近更新 更多