具有多集群设置的MaxScale

时间:2018-06-18 12:56:55

标签: mariadb replication database-replication master-slave maxscale

我一直致力于某些数据库服务器的高可用性方案,并检查了MaxScale& amp; HAProxy和两者看起来都很有趣,但问题如下。 设置MaxScale时一切顺利,直到我发现我没有看到在同一MaxScale实例上创建多个集群的方法,但这对于必须使用一个MaxScale实例控制的数据库服务器的数量是必需的。 / p>

在设置MaxScale时是否有任何方法可以实现多个集群,或者这只是MaxScale中未实现的内容?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

要将多个集群与一个MaxScale一起使用,只需定义多个服务器,监视器,服务和侦听器。这是一个群集用作服务的示例:

[server1]
type=server
address=127.0.0.1
port=3000
protocol=MariaDBBackend

[server2]
type=server
address=127.0.0.1
port=3001
protocol=MariaDBBackend

[Cluster-1-Monitor]
type=monitor
module=mariadbmon
servers=server1,server2
user=maxuser
passwd=maxpwd
monitor_interval=5000

[Cluster-1-Router]
type=service
router=readwritesplit
servers=server1,server2
user=maxuser
passwd=maxpwd

[Cluster-1-Listener]
type=listener
service=Cluster-1-Router
protocol=MariaDBClient
port=4006

这将在端口4006上公开读写拆分服务,该服务将在服务器server1server2上进行读写拆分。

要定义另一个,只需添加:

  • 定义集群的服务器
  • 用于监视服务器的监视器
  • 使用服务器的服务
  • 连接到服务的侦听器

这样,您可以公开连接到不同群集的多个端口。例如,一个群集可以侦听端口4006,另一个群集可以侦听端口4007。然后,可以使用这两个群集将两个不同的应用程序连接到两个不同的群集。