加速跨账户的 Amazon RDS 刷新,通过增量快照 数据库博客
加速跨账户Amazon RDS的增量快照刷新
关键要点
使用Amazon RDS的增量快照刷新可以提高跨AWS账户数据传输的效率。该方法通过增量快照的复制减少了时间和成本。具体流程包括快照的设置、共享及复制等关键步骤。Amazon关系数据库服务Amazon RDS是一种托管的关系数据库服务,负责数据库实例的安装、存储配置、存储管理、操作系统和数据库补丁、快照及恢复。将数据库基础设施管理的繁重任务转交给AWS,使您能够将精力集中在对业务产生最大影响的工作上。
许多客户每天或每周都会在AWS账户之间移动数据,特别是从实时数据库到开发账户,以进行开发任务、质量评估或性能评估。RDS快照能够实现这一目标,通过允许在同一AWS区域或不同区域的其他AWS账户之间复制快照。然而,复制RDS快照的时间可能会很长,尤其是在RDS实例较大且使用AWS密钥管理服务AWS KMS密钥进行加密时。
在本文中,我们将介绍如何使用RDS快照刷新跨账户的加密数据库。同时,我们还将探讨通过增量快照复制技术来减少较大RDS实例的整体刷新时间的过程。
解决方案概述
下图展示了如何使用加密的RDS增量快照并与其他账户每日报告共享。
在账户A中设置Amazon RDS,以执行自动日报快照。复制账户A中的自动快照。如果最近的副本已经存在,则此副本为增量副本。共享快照给账户B。这是必要的,以便账户B可以复制该快照。使用账户B中的KMS密钥复制快照。如果已经存在最近的加密副本使用相同的KMS密钥,则此副本为增量副本。在账户B中恢复复制的快照。源账户A的配置如下:源账户中的RDS1实例使用账户拥有的KMS密钥加密。RDS1实例已启用自动备份。目标账户B的配置如下:目标账户拥有不同于源KMS密钥的KMS密钥。共享增量快照
在本节中,我们将更详细地讨论工作流程中的步骤,并参考解决方案图的具体部分。
快照是增量的特性。初始快照为完整快照;然而,随着时间推移,完整快照可能会被移除,旧快照关联的块将链接到新的增量快照。
RDS1实例的加密采用KMSKey1,这也延伸到使用相同KMS密钥的自动快照的加密。

因为自动快照不能被共享,必须获得快照的副本以在目标账户中共享和复制。
快照复制的流程如下图所示:
RDS1使用KMSKey1进行加密。KMSKey1用于加密RDS1的自动快照。创建自动快照的副本。自动化验证是否存在先前副本。如果存在先前副本,自动化验证先前副本是否使用相同的KMS密钥:如果使用相同密钥,则执行增量复制。如果使用不同密钥,则进行完整复制。如果不存在先前副本,则无论KMS密钥是否相同,复制均为完整复制。从相同账户和同一区域使用相同客户管理密钥进行的首次快照复制第1天是完整非增量复制。这可能导致额外的存储成本。而后续的复制是增量的。
如以下图所示,快照的第二次复制第2天是增量复制,如果前一副本此情况下为首次完整副本已经存在。否则,第二次复制将再次为完整复制。为了确保增量复制的功能,必须拥有最新的副本。
如果用于进行第二次复制的KMS密钥不同,那么仍会生成完整复制。在下图中,KMS密钥以不同颜色区分。为每个副本选择不同的KMS密钥会增加完成整个复制所需的时间。
第三次复制第3天仅在存在先前副本时为增量,在这种情况下无需同时保留第一次和第二次复制。当第二次副本完成后,可以安全删除第一次副本。与第一次复制相关的所有块将在后台指向第二次复制。如需详细信息,请参阅删除Amazon EBS快照。为了生成增量复制,所需的只需是一个副本最好是前一天的副本,并使用相同的KMS密钥。
初次向账户B的复制由于两个账户之间的KMS密钥不同,因此将会是完整复制,而随后只要使用相同的目标KMS密钥,则将会是增量复制;否则,将会是完整复制。
跨账户复制快照的过程与在同一账户内复制相同。请保持与之前所述的相同复制模式,其中包括第1天、第2天和第3天的设置。
如前一步所述,选择不同的KMS密钥将导致完整复制,并增加恢复过程所需的额外时间。
复制的快照可通过恢复快照来创建新的RDS实例。账号B中的RDS3和RDS4实例是使用增量副本创建的。在后台,Amazon RDS从Amazon简单存储服务Amazon S3检索所有依赖的块并恢复数据库。
RDS快照恢复的限制
以下是与RDS快照恢复相关的限制:
飞机加速app官方下载快照恢复涉及使用快照中的数据创建一个新的RDS实例。如果您打算使用相同的数据库标识符,请确保在恢复新的RDS实例之前删除或重命名当前RDS实例。此外,您还可以使用Amazon Route 53 CNAME记录将应用程序从旧的RDS数据库切换到新的RDS数据库。将快照移动到账户B时,必须使用账户B中的KMS密钥重新加密它们。RDS快照保留数据库版本,因此在从一个环境恢复快照到另一个环境时,需要考虑数据库版本。在数据库刷新期间,可能需要采取额外的预防措施,以确保升级周期不受干扰。结论
当需要有效地从一个账户刷新较大数据库到另一个账户时,考虑使用RDS增量复制方法。通过这种方法,您可以节省备份成本并提高快照复制的速度。
如您有任何疑问或建议,请在评论区分享。
关于作者
Karimulla Shaik 是亚马逊网络服务的高级数据库专业架构师,隶属于专业服务团队。他帮助客户将传统的本地数据库迁移到AWS云,并专注于数据库设计、架构和性能调整。
加载评论
使用 Terraform 模块部署 Amazon RDS Custom for Oracle 数据库
使用 Terraform 模块部署 Amazon RDS Custom for Oracle关键要点在这篇文章中,我们将探讨如何使用 Terraform 模块自动化部署 Amazon RDS Cust...
将 Meta Llama 3 与人类偏好对齐,使用 DPO、Amazon SageMaker Stu
用 DPO、Amazon SageMaker Studio 和 Amazon SageMaker Ground Truth 对 Meta Llama 3 进行人类偏好的调整作者:Anastasia T...