Бесперебойная работа в случае сбоя AWS
Я выполняю резервное копирование Elastic Load Balancer двумя экземплярами в разных зонах доступности на востоке США. Я также использую Multi-AZ RDS. В идеале это должно гарантировать, что если один AZ отключится, это не должно повлиять на приложение, потому что все распределено по нескольким AZ.
Но недавнее отключение AWS надолго остановило приложение. Я не уверен, как это может произойти. Было бы здорово, если бы кто-то мог указать, что пошло не так.
Главный вопрос, который у меня есть, - как я могу избежать этого в будущем? Я могу настроить серверы приложений в разных регионах или даже провайдеров и использовать DNS для балансировки нагрузки, но что мне делать с MySQL? Чтение реплик представит некоторую задержку, которой я бы хотел избежать.
2 ответа
Вам нужно будет иметь экземпляры AWS в разных регионах, чтобы противостоять двум последним крупным сбоям AWS.
Так как эластичный баланс нагрузки рассчитан на одну AZ, вам также необходимо добавить route53 к миксу, чтобы переключиться на другой регион.
Вам нужно будет настроить две рабочие копии приложения в нескольких AZ, поэтому вам придется использовать репликацию (master-master), поэтому, когда один AZ отключается, вы можете переключать трафик на другой. Это трудный путь как для финансовых, так и для человеческих ресурсов.