Настройка дискового хранилища EBS / EFS для аварийного восстановления
361
ziggy
Я думаю о том, как лучше всего настроить пару сред на AWS. Я хотел бы настроить два сервера:
Сервер приложений (работает веб-приложение и службы REST)
Сервер инструментов (работает несколько заданий ETL)
Конечным результатом должно быть два сервера приложений и два сервера инструментов (т.е. один сервер приложений / сервер инструментов в каждой зоне доступности)
Все среды будут общаться с одной и той же базой данных
Каждая среда будет иметь свое собственное хранилище EBS
Единое внешнее общее хранилище (EFS), которое будет доступно из любой из 4 сред.
Я немного запутался с точки зрения того, как настроить хранилище. Цель состоит в том, чтобы в случае потери экземпляра EC2 я не потерял никаких данных. Чтобы добиться этого, я бы хотел настроить его так, чтобы код развертывался в локальном хранилище (EBS), а динамический контент - во внешнем общем хранилище (EFS).
Все приложения будут находиться в папке со следующей структурой
├─ application ├─ bin ├─ lib ├─ config ├─ logs ├─ data ├─ processed ├─ failed
В случае смерти экземпляра EC2 я хотел бы сохранить конфигурацию, журналы и папку с данными. Другие папки (bin и lib) будут содержать только двоичный код, который можно восстановить из GIT. Чтобы достичь этого, я думаю о следующем хранилище
Вышеупомянутая структура может быть кошмаром обслуживания, но я не могу думать о других альтернативах. При вышеуказанном подходе код развертывается на каждом сервере приложений, но данные распределяются между двумя серверами приложений. Если один сервер приложений в одной AV-зоне умрет, другой все равно будет работать.
Другие варианты, которые я рассмотрел, включают в себя хранение всего в хранилище EBS и использование резервных копий / образов. Это не будет работать, потому что файлы конфигурации являются динамическими, и изображение может не всегда содержать самые последние данные.
Читая о хранилище EFS, похоже, что запись в него может быть медленной, что меня немного беспокоит. Вопросы:
Есть ли альтернативы вышеперечисленному?
Есть ли другие недостатки у вышеупомянутого подхода?
Есть ли способ, которым я могу иметь все (код + данные) в локальном хранилище EBS и все еще иметь возможность восстановить (до второго) в случае аварии.
заранее спасибо
Вы просматривали какую-либо документацию Amazon о высокой доступности? Если да, укажите, какие из них, и сузьте свой вопрос до одного конкретного вопроса. Мы никак не можем рассмотреть все возможные сценарии, которые могут существовать в вашей конкретной среде, и Amazon уже предоставила вам платформу для предоставления высокодоступных услуг. Например, считали ли вы, что хранилище EBS уже доступно для AZ? Я не уверен, как на этот вопрос можно ответить кратко, как он есть.
Appleoddity 7 лет назад
0
Каков ваш RPO для данных на дисках EBS? В основном, сколько данных вы готовы потерять - например, ни одного, 1 час, 24 часа и т. Д. Это, вероятно, послужит движущей силой решения.
Tim 7 лет назад
0
1 ответ на вопрос
0
Ina Kahn
При просмотре страниц AWS для EFS упоминается, что «каждый объект файловой системы Amazon EFS (т. Е. Каталог, файл и ссылка) избыточно хранится в нескольких зонах доступности». Аналогичная формулировка на странице EBS. Так что там есть некоторая избыточность. Вот Amazon PDF о высокой доступности.
Для EC2 использование нескольких зон доступности снизит вашу подверженность риску. Я бы поместил каждый экземпляр в отдельную зону доступности. А в PDF рекомендуется использовать моментальные снимки EBS с резервным экземпляром EC2 для HA. Моментальные снимки доступны в регионах, поэтому к ним легко получить доступ для аварийного восстановления. Поступив таким образом, вы ответите на свой вопрос о том, как поместить все в AWS EBS. И довольно просто скопировать тома EBS между регионами, чтобы добавить избыточность и синхронизировать все. Таким образом, вы можете иметь производственную среду, резервную среду и среду замены, которая может быстро развернуться в случае сбоя, в результате чего вам будут доступны практически две среды.
Посмотрите этот PDF и ссылку, а также документы Amazon по высокой доступности и посмотрите, что лучше всего подходит для потребностей вашего бизнеса и уровня персонала.