本文介绍阿里云RDS的多种容灾解决方案,帮助用户提升数据库的高可用性和数据安全性。
创建灾备实例
RDS MySQL
RDS MySQL提供了全球多活数据库(Global Active Database,GAD)产品,GAD融合了灾备与多活能力,基于RDS与DTS产品,为用户提供一站式、高性价比的灾备与多活解决方案。数据库实例组采用“一主多从”的星型架构,跨地域或可用区的RDS实例均通过DTS保持实时数据同步,实现数据库容灾保护的同时,为用户提供就近访问的服务体验。
适用场景:
灾备实例组:适用于跨地域或可用区灾备、灾备演练或其它有容灾需求的场景。
多活实例组:适用于跨地域多节点读写、业务数据低延迟访问或其它异地多活场景。
操作方法:RDS MySQL全球多活数据库
RDS SQL Server
RDS SQL Server提供了异地容灾功能,该功能基于SQL Server分布式可用性组(Distributed Availability Groups,DAG)和DTS跨地域网络打通能力,为用户提供一站式、高性价比的跨地域容灾方案。灾备实例组采用“一主一从”架构,其中主角色实例支持读写操作,从角色实例仅支持只读操作,且要求主从角色实例的版本均为2017企业集群版(集群系列)及以上。主从角色间通过单向数据同步链路连接,利用DAG和DTS实现跨地域数据实时同步,确保数据一致性,同时提供就近访问的服务体验。灾难恢复场景下,您可以通过灾备实例组的主从切换或灾备提升功能,快速恢复应用的业务访问。
适用场景:适用于跨地域灾备、灾备演练或其它有容灾需求的场景。
操作方法:RDS SQL Server异地容灾
RDS PostgreSQL
方案一:RDS PostgreSQL通过全球多活数据库(Global Active Database,GAD)提供了灾备能力,该方案基于RDS PostgreSQL的原生物理复制与数据传输服务(DTS),实现了一站式、高性价比的异地灾备解决方案。采用“一主一从”的架构,通过DTS实现实时数据同步,从而不仅保障数据库的异地容灾保护,还提供就近访问的服务体验。
方案二:RDS PostgreSQL提供一键容灾搭建功能,支持搭建RDS PostgreSQL跨地域容灾实例,以实现异地容灾能力。同时,支持在阿里云RDS PostgreSQL上为自建的云下实例或其他云托管实例搭建灾备实例,从而提供云上及多云的容灾能力。
适用场景:
异地容灾:业务对可用性要求极为严格。为避免区域级别的故障,数据库必须具备跨区域的高可用性,并且对RTO的要求也非常高。
跨地域只读实例:业务存在跨地域查询的需求,需实现就近读取。
部署多可用区实例
阿里云为全球多个地域提供高效、可靠的云计算服务,每个地域(Region)包含多个可用区(Availability Zone)。同一地域内的可用区之间具备低网络延迟和故障隔离的特性,确保了跨可用区部署的高可用性和容灾能力。
RDS单可用区实例运行在同一个可用区内的两台物理服务器上,为用户提供高于传统物理服务器极限的高可用性。该架构特性如下:
基础设施冗余:单可用区内机柜、空调、电路以及网络设备均采用冗余设计,最大限度降低硬件故障对服务的影响。
数据复制机制:支持异步或半同步的数据复制方式,确保主备节点之间的数据一致性。
高效的主备切换:当主节点发生故障时,系统能够快速切换至备用节点,保证服务的连续性。
但为了进一步提升数据库的可用性和容灾能力,阿里云RDS提供了多可用区实例部署方案。此方案将物理服务器分别部署在不同的可用区,当一个可用区出现故障时流量可以在短时间内切换到另一个可用区,显著增强了系统的抗风险能力。整个切换过程对用户透明,应用代码无需变更。
发生主备切换时应用到实例的连接会断开,需要应用重新连接实例。
通过DTS实现数据灾备
通过阿里云数据传输工具DTS,您可以将自建机房的数据库或ECS上的自建数据库实时同步到任一地域的RDS实例中。即使发生机房损毁等灾难,数据在阿里云数据库上也会有备份。具体操作,请参见DTS数据同步方案概览。