Нужна рекомендация для общего хранилища при автоматическом масштабировании ec2 w/ scalr

Я встретил так много ответов на этот вопрос, что я полностью потерян! Я перевожу наши 2 сайта в систему ec2 с балансировкой нагрузки, где в качестве менеджера по облачным вычислениям используется scalr. Теперь встает вопрос о постоянном хранилище для загруженного пользователем контента и других файлов. Может ли кто-нибудь дать мне предложение и, возможно, ссылку на учебник для следующих настроек и целей. 2 сайта (1 форум, 1 интернет-магазин). 1 LB 1 сервер приложений (для масштабирования до необходимого количества) 1 сервер БД (для масштабирования до необходимого количества)

Наши сайты должны будут автоматически масштабироваться, и в соответствии с тем, что я узнаю о scalr, это означает, что при загрузке новых экземпляров мне нужно запустить скрипт для настройки основ на этом сервере (git,php mods, pull site from git, move ключи и т. д.)

Чего я не понимаю, так это как мне обрабатывать загруженный пользователем контент, такой как картинки профиля, аватары, изображения товаров, темы и т. Д.

Монтировать ли папку EBS или s3fs для хранения веб-сайтов (может быть, /var/www/websitefolder) или я делаю что-то вроде монтирования папок с аватарами /var/www/websitefolder/images/avatars)

Я не уверен, куда идти с этим. Может ли кто-нибудь дать мне подробную помощь? -John

1 ответ

Решение

Это общая проблема при переходе на EC2. Ваши варианты являются одним из следующих:

  1. S3

    • Используйте s3fs как уже упоминалось, но у вас могут возникнуть проблемы с производительностью
    • Перепишите приложение для хранения пользовательского контента на S3, а не на диске.
      • Ваше приложение может прокси запрос на S3 или
      • Вы можете получить ваш клиент для загрузки непосредственно на S3, используя предварительно подписанные URL-адреса.
      • Затем пользователь может быть направлен на получение контента непосредственно из S3.
  2. Используйте кластерную файловую систему, такую ​​как Gluster.

  3. Используйте 2 выделенных сервера NFS в Active/Passive с использованием DRBD-сервера.

РЕДАКТИРОВАТЬ 20160705

В настоящее время AWS предлагает эластичную файловую систему (EFS) в ряде регионов. EFS - это размещенная служба NFS, эффективно предоставляющая вам NAS как службу.

Другие вопросы по тегам