2013-03-11 3 views
0

У меня есть пара экземпляров ec2 на ubuntu, работающих в рабочем режиме. Моя проблема в том, когда когда-либо увеличивается трафик. Я вручную загружаю экземпляр обновления кода из github.Автоматический снимок и автоматическое создание AMI

Теперь мне нужно настроить автоматическое масштабирование, так что всякий раз, когда API загружает новый экземпляр, он загружает последний AMI и присоединяется к балансировщику нагрузки, а другой мудрый я должен вручную вытащить код.

Чтобы было более ясно, вот что я собираюсь сделать.

  1. Периодически снимать экземпляр экземпляра, исходя из повседневности.
  2. Создайте AMI из снимка и сохраните его.
  3. При создании снимка не должно быть простоев.
  4. В конфигурации автоматического масштабирования следует загрузить последнюю версию AMI и прикрепить его к балансировки нагрузки

Пожалуйста, помогите мне

ответ

3

Вместо перестроения AMI и изменить его на регулярной основе, построить AMI, который автоматически извлекает из вашего репозитория кода при загрузке и, возможно, периодически после этого. Это предполагает, что единственным отличием ваших AMI будет код.

Например, если вы используете SVN, вы можете пометить свою последнюю версию сборки тегом/последним и всегда тянуть с этого пути. Теперь у вас есть один AMI, который при загрузке всегда имеет последний код. Вы могли бы даже зайти так, как если бы задание cron выполнялось каждые 5 минут, чтобы посмотреть на тег и ревизию, которые были проверены, в сравнении с тем, что ваш сервер SVN сообщает как последний. Если это изменится, оно убьет себя, и автомасштабирование начнет замену; или он просто обновляет svn и получает последние изменения и продолжает прерываться.

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

Как это сделать? Многие варианты, но использование сценариев запуска ОС, вероятно, лучше всего. Существует множество способов автоматизировать доступ к вашему репозиторию кода. Я уверен, что есть другие вопросы StackOverflow.

+0

Если веб-сервер запускается автоматически, проверка работоспособности узла ELB может включать проверку, чтобы убедиться, что код обновлен. –

Смежные вопросы