如果 reader 实例和写入器实例具有不同的实例类型,DocumentDB 故障转移如何发生?

How does DocumentDB failover happen if the the reader instance and writer instance have different instance types?

我有一个只有一个副本实例 ( db.r5.16xlarge ) 和一个主实例 ( db.r5.24xlarge ) 的 DocumentDB 集群。 如果主实例出现问题并发生故障转移,则副本实例将充当新的主实例。 一旦之前的主实例准备就绪,它会再次故障转移回我的初始 db.r5.24xlarge 主实例吗?

不,它不会再次进行故障转移以升级以前的主实例。您必须手动进行故障转移才能提升更大的实例。

使用故障转移层的 3 个实例可以实现更好的控制。每个副本实例都与一个故障转移层 (0–15) 相关联,其中较低的层意味着该实例具有较高的优先级以供选择。

例如,一个集群在第 1 层设置了两个 db.r5.24xlarge,在第 2 层设置了一个 db.r5.16xlarge。如果主 db.r5.24xlarge 变得不可用,那么另一个 db.r5.24xlarge 将被提升,因为它具有更高的优先级。

Reference.