0

我一直在为一些数据库服务器开发一些高可用性方案,并检查了 MaxScale 和 HAProxy,它们看起来都很有趣,但问题如下。设置 MaxScale 时一切顺利,直到我发现我看不到在同一个 MaxScale 实例上创建多个集群的方法,但这是必须使用一个 MaxScale 实例控制的数据库服务器数量的必要条件。

在设置 MaxScale 时有没有办法实现多个集群,或者这只是 MaxScale 中没有实现的东西?

谢谢您的帮助

4

1 回答 1

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 上侦听。这两个可以用于将两个不同的应用程序连接到两个不同的集群。

于 2018-06-20T07:33:41.453 回答