Обновление проекта, запущенного в кластере - PullRequest
2 голосов
/ 24 марта 2012

Я запускаю проект на кластере OpenStack на машинах CentOS6.2.Проект состоит из около 10 репозиториев.Один репо для сервиса.А сервисы работают на 20 разных узлах в зависимости от некоторых ролей.Итак, мы можем сделать какое-то отображение между сервисами и ролями.Доставка изменений через кластер - это боль в заднице, если вы делаете это вручную.В настоящее время мы используем git pull в сочетании с некоторыми изменениями конфигурации на каждом узле.здесь задействован человеческий фактор, поэтому я не хочу переводить кластер в автономный режим из-за ошибки вручную.

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

ОБНОВЛЕНИЕ: Проекты ниже, кажется, подходят.Есть практический опыт работы с ними?

Ответы [ 3 ]

1 голос
/ 24 марта 2012

Мы используем Springloops для управления нашими развертываниями.Это позволяет нам настраивать разные серверы для каждой ветви каждого репозитория.Вы просто перемещаетесь в центральное хранилище и управляете развертыванием оттуда.Развертывание может быть автоматическим или ручным.

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

Это работает хорошо, потому что он берет на себя ответственность за управление исходным кодом с серверов, если требуется новое развертывание на новый сервер, очень легко добавить новыйсервер в Springloops и нажмите на него, вместо того, чтобы клонировать git-репозиторий на каждом новом сервере и настроить какую-либо cron или запускаемую задачу для обновления репозитория.

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

Стоит посмотреть.

0 голосов
/ 24 марта 2012

Эти проекты, кажется, подходят больше:

В настоящее время я думаю о Fabric сценарии с Dozzerd в качестве механизма хранения конфигурации \ главного выбора.

0 голосов
/ 24 марта 2012

Похоже, что на той шкале, над которой вы работаете, вы можете использовать что-то вроде chef или puppet.

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