EBS для хранения баз данных и файлов веб-сайтов

Я провел день, экспериментируя с AWS в первый раз. У меня запущен экземпляр EC2, и я смонтировал Elastic Block Store (EBS) для хранения баз данных MySQL.

Есть ли смысл также помещать файлы моего веб-приложения в EBS, или я должен просто развернуть их в обычной файловой системе EC2?


person ryonlife    schedule 15.03.2009    source источник
comment
Никто кроме вас не знает ваших требований. Может, тебе стоит поразмыслить...   -  person Mitch Wheat    schedule 15.03.2009
comment
Проголосовал за, потому что это совершенно законный вопрос.   -  person Kevin Peterson    schedule 27.06.2009
comment
Как отмечает Кевин Петерсон в своем ответе, было бы очень важно знать, имеете ли вы в виду развернутый код или файлы данных.   -  person Jonik    schedule 19.05.2010


Ответы (4)


Когда вы говорите о файлах веб-приложений, я не уверен, что именно вы имеете в виду.

Если вы имеете в виду свой развернутый код, вероятно, нет смысла использовать EBS. Что вы хотите сделать, так это создать AMI с вашими предварительными условиями, а затем иметь сценарий для создания экземпляра этого AMI и развертывания вашего последнего кода. Я настоятельно рекомендую вам автоматизировать и протестировать этот процесс, так как легко забыть о некоторых настройках, которые вы должны где-то изменить вручную.

Если вы храните файлы данных, которые изменяются работающим приложением, EBS может иметь смысл. Если это что-то вроде загруженных пользователем изображений или чего-то подобного, вы, вероятно, обнаружите, что S3 предлагает гораздо более простую модель.

EBS подойдет для: баз данных, индексов lucene, CMS на основе файлов, репозитория SVN или чего-то подобного.

person Kevin Peterson    schedule 27.06.2009
comment
+1, это самый четкий ответ здесь. Кроме того, если OP задается вопросом о скорости EBS по сравнению с хранилищем экземпляров, он должен проверить это: serverfault.com/questions/111594/ - person Jonik; 19.05.2010

EBS предоставляет вам постоянное хранилище, поэтому, если ваш экземпляр EC2 выйдет из строя, файлы все еще будут существовать. По-видимому, это повышенная производительность ввода-вывода, но я бы проверил это, чтобы быть уверенным.

person Michael Glenn    schedule 16.03.2009

Если ваши файлы будут часто меняться (например, БД) и вы не хотите продолжать синхронизировать их с S3 (или где-то еще), то EBS — хороший способ. Если вы вносите изменения нечасто и можете вручную (или по сценарию) синхронизировать файлы по мере необходимости, сохраните их в S3. Если вам нужно завершить работу или вы по какой-либо причине потеряли свой экземпляр, вы можете просто отключить их при запуске нового экземпляра. Это также предполагает, что вы заботитесь о стоимости. Если стоимость не является проблемой, использование EBS менее сложно. Я не уверен, планируете ли вы иметь отдельную EBS для своей БД и веб-файлов, но если вы планируете иметь только одну EBS и у вас достаточно свободного места для ваших веб-файлов, опять же, EBS менее сложен . Если, как уже упоминалось, вас беспокоит производительность, лучше протестировать конкретное приложение.

person ahanson    schedule 29.04.2009

Наш подход заключается в том, чтобы предварительно развернуть на нашем AMI сценарий, который извлекает самую последнюю и лучшую версию кода из системы управления версиями. Это позволяет очень просто быстро запускать новые инстансы или обновлять все работающие инстансы (мы выводим их из ротации балансировки нагрузки по одному, запускаем скрипт и возвращаем их обратно в ротацию).

ОБНОВИТЬ:

Если читать между строк, похоже, что вы монтируете отдельный том EBS в экземпляр, поддерживаемый хранилищем экземпляров. AWS недавно представила инстансы с поддержкой EBS, которые имеют массу преимуществ по сравнению со старыми инстанс-хранилищами. Тем не менее, я по-прежнему монтирую свои данные MySQL на отдельный раздел EBS, чтобы при необходимости легко смонтировать их на другой сервер.

Я настоятельно рекомендую экземпляр с поддержкой EBS с отдельным томом EBS для данных MySQL.

person Eric J.    schedule 20.07.2009