MariaDB / Galera Cluster 动态添加节点

MariaDB / Galera Cluster add nodes dynamically

我 运行 对 Galera 集群设置为与 MariaDB 一起工作的方式有疑问。

集群中的每个节点都必须具有包含集群中每个其他节点(包括)的 IP 地址的配置。如果我想向集群添加一个节点,我必须手动将该节点的 IP 地址添加到每个其他节点的配置中。

这使得为集群动态启动和关闭服务器变得困难。

是否有解决此问题的方法?可能是一种通知每个节点远程添加到集群的新节点的方法?

Galera集群只需要一台服务器作为主节点。您可以使用集群中的任何或所有服务器作为新节点的集群地址,新节点将自动连接到其余节点。

例子

活动集群:

10.0.0.2 (the first node of the galera cluster)
10.0.0.3
10.0.0.4 

如果我们想将10.0.0.5添加到集群中,我们可以使用以下任何一个作为它的集群地址:

gcomm://10.0.0.2
gcomm://10.0.0.3
gcomm://10.0.0.4
gcomm://10.0.0.2,10.0.0.3
gcomm://10.0.0.2,10.0.0.4
gcomm://10.0.0.3,10.0.0.4
gcomm://10.0.0.2,10.0.0.3,10.0.0.4

这样做的缺点是,如果新节点在其集群地址中配置的服务器出现故障,则新节点将失去其他服务器作为回退。

因此,解决此问题的方法是拥有 X 个永不停机的静态节点,然后将所有这些用作您启动的任何新从属节点的集群地址。