为什么 AWS RDS 子网组需要多个可用区?

Why does an AWS RDS subnet group require multiple availability zones?

创建新的 RDS MS SQL 实例时,它需要一个跨越多个可用性区域的子网组。我了解这与多 A-Z 复制不同,我的实例将存在于单个可用性区域内。 那么,当我添加这个跨越不同区域的子网组时,这实际上在做什么?

RDS 使用额外可用区存储备份数据和日志以实现冗余,您实例的数据存储在其他可用区中。

可在此处找到更多信息:

https://aws.amazon.com/rds/faqs/

Q: Why does additional backup storage cost more than allocated DB Instance storage?

The storage provisioned to your DB Instance for your primary data is located within a single Availability Zone. When your database is backed up, the backup data (including transactions logs) is geo-redundantly replicated across multiple Availability Zones to provide even greater levels of data durability. The price for backup storage beyond your free allocation reflects this extra replication that occurs to maximize the durability of your critical backups.

[Multi-AZ 部署(一个备用)] 和 Multi-AZ deployment (two readable standbys) 有单独的计划。因此不能将另一个 AZ 用作备用,因为您部署的是单个 AZ 实例。

根据常见问题解答,RDS 备份存储在 S3 中。 [Amazon RDS 常见问题解答]

Q: Where are my automated backups and DB snapshots stored and how do I manage their retention? A: Amazon RDS DB snapshots and automated backups are stored in S3.

事实证明,没有具体原因[同样来自同一个常见问题解答页面]--

Then why does it need you to define other AZ? For Multi-AZ deployments, defining a subnet for all Availability Zones in a Region will allow Amazon RDS to create a new standby in another Availability Zone should the need arise. You need to do this even for Single-AZ deployments, just in case you want to convert them to Multi-AZ deployments at some point.

第二个子网正坐在那里等待您升级到 Multi-AZ。这就是它的设计和实现方式,以便在以后需要时简化转换。可能是为了尽可能简单地迁移到 Multi-AZ。 [aws re:post]

如果出现故障,AWS 会自动将RDS 转移到第二个子网吗? -- 不,如果启用 Multi-AZ,它只会转换到第二个子网。