Amazon EC2 несколько экземпляров с приложением SVN - PullRequest
0 голосов
/ 10 февраля 2011

Хэя, Быстрый вопрос. У меня есть несколько экземпляров на EC2 с балансировщиком нагрузки между ними. Я использую приложение SVN, которое использовалось для продвижения в мою среду. по желанию.

С несколькими EC2, как бы я выдвинул кодовую базу ко всем им одновременно? Любые мысли / ссылки будут оценены.

Ответы [ 3 ]

1 голос
/ 10 февраля 2011

Есть несколько разных способов сделать это.

Если вы используете упругие балансировщики нагрузки

Напишите скрипт, который:

  1. Удаляет машину из пула
  2. Обновляет SVN-хранилище
  3. Повторно добавляет машину в пул
  4. Повторяется для всех дополнительных машин

Вы также можете получить фантазию и удалить одну машину, обновить ее, удалить все остальные машины и обновить их, если вас беспокоит согласованность.

Если вы используете пользовательское приложение балансировки нагрузки

Просмотр Capistrano .Вам не нужно использовать его с Ruby / Rake - вы можете написать собственные файлы cap, которые могут выполнять параллельное развертывание.

0 голосов
/ 10 февраля 2011

Мы используем Scalr. Он доступен как сервис (Scalr.net) или вы можете запустить его самостоятельно (это с открытым исходным кодом - хотя источник в репозитории googlecode иногда немного отличается от версии, которую использует сервис).

По сути, Scalr имеет глобальную функцию сценариев, с помощью которой вы можете указать скрипт (например, bash, PHP, что угодно с #! Bang) и запустить его на всех экземплярах данной «роли» (например, веб-экземпляр). В нашем случае у нас есть скрипт, который просто выполняет svn checkout или svn update в зависимости от ситуации. Scalr поддерживает периодическое планирование сценариев, поэтому в среде dev я запускаю его каждые 5 минут, чтобы синхронизировать dev с SVN, но, очевидно, я запускаю его вручную для производства. (У меня есть скрипт, принимающий параметр для указания ветки SVN для использования)

0 голосов
/ 10 февраля 2011

Как на счет vlad или fabric для развертывания кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...