侧边栏壁纸
  • 累计撰写 208 篇文章
  • 累计创建 16 个标签
  • 累计收到 5 条评论

目 录CONTENT

文章目录
AWS

将多可用区 Amazon RDS 实例修改为单可用区实例会产生什么影响,反过来呢?

Wake
2023-09-04 / 0 评论 / 0 点赞 / 965 阅读 / 1,467 字

前言:
在单可用区设置中,一个 Amazon RDS 数据库实例和一个或多个 Amazon Elastic Block Store (Amazon EBS) 存储卷部署在一个可用区中。在多可用区配置中,数据库实例和 EBS 存储卷跨两个可用区部署。

在实例上启用多可用区时,Amazon RDS 会使用同步存储复制来维护冗余且一致的备用数据副本。对于多可用区部署,Amazon RDS 将检测并自动从最常见的基础设施故障场景中恢复。这种检测和恢复是为了尽可能快地恢复数据库操作。有关更多信息,请参阅 Amazon RDS 的高可用性 (多可用区)。

要将数据库实例从单可用区部署更改为多可用区部署(或反过来),请参阅修改 Amazon RDS 实例。

将单可用区实例更改为多可用区实例的影响

将单可用区实例更改为多可用区时,不会出现任何实例停机的情况。在修改过程中,Amazon RDS 会创建实例卷的快照。然后,使用此快照在另一个可用区中创建新卷。尽管可以立即使用这些新卷,但您可能会遇到性能影响。这是因为新卷的数据仍然从 Amazon Simple Storage Service (Amazon S3) 加载。同时,数据库实例继续在后台加载数据。此过程称为延迟加载,可能会导致写入延迟增加,并在修改流程期间和修改后对性能产生影响。

性能影响的大小与卷类型、工作负载、实例和卷大小有关。对于操作高峰时段的大型写入密集型数据库实例,这种影响可能很大。因此,在生产环境中运行此修改之前,最好先测试对测试实例的影响。在维护或低吞吐量窗口中完成此修改也是一种最佳做法。

将多可用区实例修改为单可用区实例的影响

当您将实例从多可用区更改为单可用区时,实例不会出现停机时间。在修改期间,Amazon RDS 仅删除辅助实例和卷,主实例不受影响。

在将实例从多可用区部署更改为单可用区部署之前,需要考虑以下几点:

  • 如果是多可用区部署,在数据库实例发生计划内或计划外中断时,Amazon RDS 会自动切换到另一个可用区中的备用文案。然而,在单可用区实例中,您可能必须启动时间点还原操作。该操作可能需要几个小时才能完成。最近的可恢复时间后发生的任何数据更新均不可用。所以,如果发生故障,单可用区实例可能会出现额外的停机。
  • 在多可用区实例中,自动备份是在自动备份窗口从辅助实例创建的。对于 Amazon RDS for MariaDB、Amazon RDS for MySQL、Amazon RDS for Oracle 和 Amazon RDS for PostgreSQL,在备份多可用区部署期间,主实例上的 I/O 活动不会暂停,因为备份是从辅助实例中获取的。对于 Amazon RDS for SQL Server,在备份多可用区部署的过程中,I/O 活动会暂停。单可用区数据库实例上的备份过程会导致 I/O 暂停,暂停时间从几秒到几分钟不等。时间长短取决于数据库实例的大小和类。
  • 在多可用区部署中,操作系统维护首先应用于辅助实例。辅助实例被提升为主实例,然后在旧的主实例上执行维护,旧的主实例将成为新的备用实例。所以,在多可用区实例中执行某些操作系统补丁期间,停机时间最短。
  • 如果您正在扩展多可用区实例,则停机时间最短。这是因为,首先将会修改辅助实例。辅助实例升级为主实例。然后,修改旧的主实例(现在是辅助实例)。单可用区实例在扩展操作期间变得不可用。

总结:
因为无论是多可用区切换成单实例,还是单实例切换成多可用区都不会对主实例进行重启的操作,而且多可用区对于数据库更新中断的时间会比较短,不过多可用区实例费用是单可用区的RDS实例的2倍。如果是以节省成本为前提下,个人建议的最佳使用场景是在RDS数据库不用进行版本更新的时候,设置成单可用区的实例。一旦出现RDS数据库需要进行版本更新的时候,可以提前两天或者3天将单可用区实例切换成多可用区实例,然后在维护当天进行更新则可以减少RDS更新底层版本的时间。因为多可用区是将辅助实例先升级底层版本,然后AWS那边实行故障转移,将辅助实例切换成实例,这种方式对于数据库升级是比较稳定的,不至于等待太长时间。然后等到升级版本稳定后在改成单实例的数据库就行了

0

评论区