Назад | Перейти на главную страницу

Установка и запуск AWS DR

Я работаю над созданием установки аварийного восстановления и Runbook на основе AWS.

У меня нет опыта создания установок DR, поэтому было бы очень полезно, если бы опытные ветераны могли помочь мне в этом.

Наша установка:

RDS MYSQL Aurora DB
ElastiCache
Ubuntu 16.04 Linux EC2 instances
Static files stored in S3
Route 53- Total of 250 record sets.
Application Load balancer

Все под одним VPC. Мы пытаемся построить установку PilotLight DR.

Это зависит от того, чего вы пытаетесь достичь и какой Катастрофа (это D в DR) от которого вы пытаетесь защититься. Наиболее вероятно D является Сбой экземпляра (который включает EC2, узел ElastiCache, узел RDS и т. д.). Каждый второй Катастрофа довольно редко.

Поэтому в большинстве случаев достаточно просто настроить несколько зон доступности с надлежащим автоматическим переключением при отказе, и все готово. Более конкретно:

  • Аврора - сделайте его Multi-AZ как минимум с 2 узлами. Вы можете сделать реплику в другом Область для душевного спокойствия.
  • ElastiCache - Сделайте его многоузловым в зонах доступности. ElastiCache обычно не хранит ценные данные, в конце концов, это кеш.
  • S3 - включить управление версиями и, возможно, репликацию корзины в другой регион.
  • Маршрут53 - не волнуйтесь, это уже глобально, а не регионально.
  • ALB - по умолчанию это уже Multi-AZ.

Что осталось, это Экземпляры EC2. Вы должны иметь их в группы с автоматическим масштабированием (ASG) в нескольких зонах доступности, что означает, что если один экземпляр выходит из строя, он автоматически воссозданный в другом месте. Излишне говорить, что для этого требуются экземпляры без сохранения состояния, то есть все ваши данные должны находиться в базе данных или в общей файловой системе, такой как EFS, а не в экземплярах EC2. Только тогда вы сможете эффективно включить их в ASG.

Если это слишком сложно, вы можете настроить CloudWatch Alarm для автоматического восстановления отказавшего экземпляра - обычно тоже неплохо работает.

Или конвертируйте свои приложения в Докер-контейнеры и запустить их в Кластер Фаргейт что снова обеспечивает автоматическое восстановление в случае сбоя контейнера.

Суть в том, что когда развертывание - это свойство, созданное в облачный Таким образом, почти нет причин для традиционного ручного аварийного восстановления, поскольку высокая доступность и отказоустойчивость изначально заложены в развертывании.

Надеюсь, это поможет :)