Можно ли установить корень документа AWS Elastic Beanstalk на EFS?

(Оригинал задан в SuperUser, но теперь "приостановлен" - view )

Я бы очень хотел иметь возможность использовать Elastic Beanstalk для размещения приложения Joomla. Однако есть пара проблем:

  1. Пользователи должны иметь возможность загружать контент на сайт Joomla.
  2. Joomla обновляется автоматически, и я ожидаю, что мне нужно будет установить больше после первоначального развертывания.

Я знаю, что с помощью множества хаков / настроек я мог бы настроить локальную среду Joomla, затем использовать ее для администрирования сайта и вносить изменения в приложение EB с помощью Git.

] Однако я склоняюсь к идее выполнения единого развертывания в Elastic Beanstalk и настройки среды для обслуживания содержимого из эластичной файловой системы. Затем он может быть передан любому из экземпляров в группе автомасштабирования, созданной Elastic Beanstalk.

Я знаю, что создание и подключение EFS к экземплярам внутри EB может быть выполнено с помощью файлов конфигурации, найденных здесь ], однако, хотя EFS действительно смонтирован, приложение все равно обслуживается с локального диска.

Кроме того, официальные инструкции AWS по развертыванию сайта Wordpress с использованием EFS приведены здесь . После проверки файлов конфигурации в папке .ebextensions я вижу, что файл конфигурации, который монтирует EFS, создает символическую ссылку между каталогом монтирования и wp-content / uploads. Это может сработать для установки Wordpress, но то, что я хотел бы сделать с Joomla, - это обслуживать все приложение из EFS.

Похоже, мне либо нужен способ создания символической связи между корнем приложения и каталог монтирования или просто изменить корневой каталог приложения на сам каталог монтирования. Проблема в том, что я не могу понять, как сделать ни то, ни другое.

Любая помощь будет очень признательна. Для каждого из этих сайтов у нас также есть соответствующие промежуточные сайты - обычно на другом сервере того же хост-провайдера. Я начал использовать Digital Ocean ...

Мы размещаем множество сайтов на сторонних хостах. Для каждого из этих сайтов у нас также есть соответствующие промежуточные сайты - обычно на другом сервере того же хост-провайдера. Я начал использовать Digital Ocean для создания сайтов просто потому, что они быстрее настраиваются и, что наиболее важно, мы получаем root-доступ. Иногда, когда мы продвигаемся от постановки к работе, это нарушает определенные аспекты, потому что серверные среды не совпадают - например, работают разные версии Php. Есть ли команда, которую я мог бы запустить на размещенных серверах, чтобы получить полный список системных переменных, пакетов и конфигурации? Тогда я смогу «построить» точную копию на Digital Ocean.

1
задан 24 May 2017 в 17:22
2 ответа

В bash нет универсальной команды для получения информации о пакете, поскольку CentOS и Ubuntu используют два совершенно разных менеджера пакетов, и тогда BSD - совершенно другой зверь. Теперь вы можете взглянуть на формы дистрибутивов и тому подобное и найти команды, которые сообщат вам обо всем, что установлено, но когда многие из них являются вспомогательными пакетами, которые будут / будут установлены с другими пакетами программного обеспечения. Если вы знаете, что можете возиться с сервером и в конечном итоге заставить его «работать», это поможет. Итак, вот что я бы сделал

Сначала вы захотите выбрать и изучить инструмент управления конфигурацией. Я использую Ansible, так как я системный администратор и люблю Linux даже на своем рабочем столе. Ansible основан на Python и зависит от ssh, поэтому он вписывается в мой рабочий процесс разработки и DevOps. Индивидуальный разработчик в моей компании и я управляю собственной инфраструктурой. Некоторыми другими инструментами могут быть Chef, Puppet, Salt и Fabric, но это не обширный список, просто те, которые я могу придумать в своей голове.

В следующий раз потратьте время на создание воспроизводимого (sp? ) система. большинство инструментов управления конфигурацией могут быть связаны с множеством сервисов и других модулей, что может оказаться полезным при работе с несколькими хостами и поставщиками. Построение этой системы стандартизирует весь ваш стек независимо от того, где он размещен, и это устранит разницу между постановкой и производством. т.е. не более того, «какая версия PHP установлена» или «заблокирован ли этот ящик».

Многие из этих инструментов управления конфигурацией могут интегрировать в инструменты чата вашей компании. Это означает, что вы можете выполнить развертывание из чата, не касаясь каких-либо командных строк. эта идея называется «ChatOps» и может заинтересовать вас в будущем.

Прибыль ???

TL; нет ответа

  1. выберите инструмент
  2. Изучите и разверните инструмент
  3. Увеличьте
  4. прибыль ???
1
ответ дан 3 December 2019 в 18:30

Вы можете использовать некоторые инструменты подготовки, такие как Ansible, CFEngine3, puppet и т. Д., Для создания «сценариев» того, как должны выглядеть серверы, а затем использовать его для настройки производства и сцены. Тот же сценарий приведет к тому же серверу (если вы напишете его правильно), плюс у вас есть план аварийного восстановления, чтобы исправить ваши серверы, когда что-то случится.

2
ответ дан 3 December 2019 в 18:30

Теги

Похожие вопросы