扩展 Mariadb Galera 集群

Scaling Mariadb Galera Cluster

我已经在 ubuntu 14 上安装了 MariaDB Galera Cluster,它工作正常。

See the tutorial

我有 3 个节点(每个 500GB 硬盘容量)mariadb 集群,所有复制都运行良好。

我的问题是:

当我运行 out disk space 几年后,增加数据库容量的确切方法是什么?

是否可以添加额外的节点并增加数据库 HDD 容量?我听说过 MaxScale,但我不知道它是否适用

谁能根据上面的配置解释一下

This is a MaxScale Simple Sharding with Two Servers

假设 500GB 是问题...

计划 A:

  1. 从旋转中取出一个节点。
  2. 将磁盘驱动器升级到更大的。
  3. 将节点重新旋转。 SST 将发生,并且一个节点现在将有更多 space.
  4. 对每个其他节点重复。

B计划:

  1. 购买一台驱动器更大的新机器。
  2. 将其添加到集群。新机器会做SST。
  3. 用更多新机器重复。
  4. 永久删除旧机器。

B 计划可能还会添加更多内核等(但您没有提到需要这样做。)

这两种方法的停机时间都不会超过单台服务器丢失(3 次),您已经知道并且可以轻松处理。

如果你想分片数据,那将涉及多个集群。除非即将超过 Clusterwrite 容量,否则不保证分片。并且分片不是一项微不足道的任务。

'expand' 磁盘的另一种方法...使用 RAID 控制器(比 RAID 软件更好),您可以通过 "striping"。通常人们会使用 RAID-5 或 RAID-10 来获得奇偶校验,以便从死驱动器中无缝恢复。但是,Galera 可以让您在不丢失系统的情况下修复服务器的任何部分,从而有效地处理死驱动器。所以RAID-0可以说更划算。

一些操作系统还允许您逻辑上多个驱动器视为一个大文件系统。这不会给您带来条带化的性能提升,但它确实让您(我认为)添加驱动器而无需重新安装 OS、软件和数据。

具有电池支持的写入缓存 的 RAID 控制器具有进行写入的额外优势 "instantaneous" 即使没有因电源故障而丢失的风险。