在云中设置全局 MySQL 集群

在云中设置全局 MySQL 集群

我正在彻底检查这个问题,以更具体地确定我需要帮助的地方。

我使用两个工具来管理一堆云服务器:木偶伦德克。这两个都可以配置为使用 mysql 后端。我想在美国和英国设置每个应用程序的实例,将英国服务器视为热备用服务器,以防美国服务器出现故障

我想使用 MySql 集群,以便数据自动从美国复制到英国。因为这些是热备用,所以高性能不是目标。冗余和数据完整性是最重要的。

我的问题围绕着 mysql 集群的设置。我想运行三台服务器,每台服务器运行一个数据节点、一个 sql 节点和一个管理节点。这是 mysql 服务器的有效配置吗?如果是,有人能告诉我如何创建这样的设置吗?我下载了官方 tarball 和官方 debian,它们的文档与许多在线教程相矛盾。我正在 Ubuntu 10.04 上安装。

答案1

对于 MySQL Cluster 部署,您将需要至少 2 个数据节点,这些节点之间可以同步复制数据 - 建议在每个站点上都这样做。然后使用 MySQL 服务器节点提供的异步复制在 2 个数据中心之间进行复制 - 在 MySQL 领域,这称为地理复制

管理节点可以与 SQL 节点位于同一位置

首先,我建议你看一下快速入门指南,其中介绍了如何在单个节点上部署: http://downloads.mysql.com/tutorials/cluster/GetMySQLClusterRunning-LINUX.pdf

这里还有一个教程: http://mysql.com/products/cluster/cluster_install_demo_linux.html

答案2

我们很难回答这是否“合理”——我们对您的环境、架构、工作负载、性能容忍范围等一无所知。

如果您的环境已经“在云端”,并且您选择的提供商可以为您提供英国托管服务,那么这似乎是完全合理的,前提是您有一个良好、可靠的复制计划。

如果你在专用设备上运行,我建议在“迁移到云”之前进行性能和可行性研究,并建议你采取云中断历史在将您的数据(和业务)交付给其他人的基础设施之前,请考虑这些因素。从长远来看,将您当前的确切设置克隆到其他地方可能更容易(即使这意味着要为机架和电力支付更多费用),直到您确定有另一种架构可以满足您的需求。

如果成本是一个严重的问题,请考虑在远程站点部署 VMWare 环境。性能通常比较合理,在单个 VM 主机的范围内,您将拥有一些有限的可扩展性选项,并且机架占用空间(因此成本)大大降低。


可扩展多站点(尤其是多国家)架构的设计和长期管理超出了您的问题范围,即使您隐含地询问它(If so, would anyone be able to help me with the configs?)/ - 如果您仍在使用教程并且无法弄清楚如何将它们推广到多站点/多国家架构,则有两种可能性:

  1. 您缺乏做这件事的经验。
    (聘请了解自己在做什么的人并向他们学习。从长远来看,这更便宜)

  2. 您的教程/示例的架构很糟糕,您被它们束缚住了
    (用合理的架构重新设计——如果您在经过长时间的思考后仍然不确定如何使设计变得更好,那么您就回到了“雇人”的领域)

相关内容