Amazon RDS 维护窗口 - 如何处理高可用性

0

【以下的问题经过翻译处理】 你好,目前我们使用自己的MySQL实例。我正在考虑迁移到RDS托管数据库服务。在阅读文档时,我看到它每周有30分钟的维护窗口。这大致意味着应用程序的可用性为99.7%。我了解到在例如Aurora等多AZ架构中,可以在不同的AZ中部署读取副本,并在此期间将其提升为主副本。但是看起来到读取副本(被提升为主要副本)的跨可用区流量会收费。从策略角度来看,这是否能够准确概括:1. 为备份和读取副本设置不同的维护窗口。理想情况下,读取副本将有一个较早的窗口,以便首先进行升级。2. 在读取副本或备份副本升级后,将其提升为主副本。3. 将原来的主副本放入维护窗口并升级 4. 将其切换回主副本。(避免跨可用区数据传输费用)这是否正确理解?如何处理具有更高可用性要求的RDS?还是不可能?

profile picture
EXPERTE
gefragt vor 4 Jahren48 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 不用谢!“复制”是一个非常通用的术语,涵盖了制作数据副本的内容,因此其使用可能会令人困惑。为了创建读取副本而在非Aurora数据的实例之间进行切换,RDS 使用的是各个数据库引擎的复制机制。它以异步模式使用它们,有两个原因。首先,当两个实例无法通信时,在同步模式下,主节点将停滞不前。鉴于读取副本不参与自动故障转移方案,这意味着故障会降低或停止处理。其次,由于同步复制会影响性能,且同步副本越多,影响越大,您真的不会想在跨区域之间开启同步复制,因此同步读取副本不作为选项提供。理论上它可以在一个区域内跨 AZ 之间工作,但第一个问题仍然存在:读取副本不参与自动故障转移方案。因此,RDS将高可用性(Multi-AZ)和读取扩展/灾难恢复(读取副本)解决方案分离开来。Multi-AZ 不仅仅是复制,在底层它使用了各种形式的复制。对于除 Microsoft SQL Server 之外的所有非 Aurora 引擎,它使用卷复制,对于 SQL Server,它使用镜像或者Always-On Availability Groups。在这三种情况下,复制是同步的,因此副本始终保持最后一个提交的事务,并仅支持同一个区域内的跨可用区。

profile picture
EXPERTE
beantwortet vor 4 Jahren

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen