如何在Amazon Aurora数据库中测试故障转移?

时间:2016-12-15 02:01:19

标签: amazon-web-services amazon-rds amazon-rds-aurora

实际上,""我的意思是,在现实世界的情况下,我希望当从主实例到副本发生故障转移时,(现在的)主要实例无论出于何种原因都无法在第一时间导致故障转移,并且它将是处置。这引出了一些问题:

  1. 如果处理(ex)主实例,则将现有副本提升为新主副本。是否创建了新的副本,因为您现在拥有n - 1个副本实例吗?
  2. 如果我的任何假设是正确的,有没有办法测试这个主实例实际失败并被处理掉的地方,因为"故障转移" RDS中的功能只是将其切换为副本?

1 个答案:

答案 0 :(得分:0)

在这种情况下,我确定您所说的“处置”是什么意思。在发生故障的情况下,aurora会启动故障转移,这是将副本提升为写入者和将旧写入者提升为读者的组合。您听起来像是Aurora会完全删除有故障的实例。那永远不会发生。在某些情况下,如果主机被认为有故障,则将其完全替换。它称为主机替换,即使在这种情况下,恢复后您的确拥有相同数量的实例。

现在回答您的特定问题:

1)我想您是指在写入器上启动主机替换的情况。在这种情况下,您将在短时间内拥有n-1个副本,但最终将为您配置新主机。

2)我假设您要进行故障测试,以使实例完全崩溃。 Aurora确实为您提供了一堆故障注入查询,您可以使用它们来模拟故障。我用它来生成崩溃并测试故障转移时间,我没有用它来启动主机替换。您可能要探索那条路线。

https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Managing.FaultInjectionQueries.html