Задать вопрос
@dexes56
Back-end engineer

Как настроить деплоер и миграции БД?

Доброго времени суток, господа.
Есть сайт размещающийся на трёх серверах. Каждый сервер содержит последнюю версию программного кода (PHP, kohana) и всю базу данных (MySQL), то есть каждый сервер можно назвать полноценным самостоятельным instance'ом, который может вполне работать и в одиночку, без других серверов.

Испытываются неудобства при выкате изменений программного кода и структуры БД на релиз.
Сейчас это происходит следующим образом: заходим на сервер, меняем базу, затягиваем изменения из git'а, идем на следующий сервер. Это не удобно.
Хочется чтобы новая версия (и кода, и структуры базы) выкатывалась одной командой на все сервера. Точно так же хочется делать rollback одной командой.

Что посоветуете? Какое ПО использовать? Почитал про capistrano, но так и не понял, умеет ли он разворачивать изменения сразу на нескольких серверах, и что-то мутное там с миграциями.
Комментарий с хабра: habrahabr.ru/post/110021/#comment_3497938
И остается открытым вопрос с миграциями - будет ли это отдельная программа или же придется изобретать велосипеды и писать свой модуль миграций на kohana (или дорабатывать имеющиеся под себя).
  • Вопрос задан
  • 472 просмотра
Подписаться 4 Оценить Комментировать
Решения вопроса 1
thewind
@thewind
php программист, front / backend developer
Напишите свою выкатывалку-связку git-ваши сервера через, к примеру, rsync ( если свои сервера, то можно поставить). А миграции бд - не пробовали ruckusing migrations?
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
miraage
@miraage
Старый прогер
Я использую Mina.
Да, это руби. Но у меня деплой симфони проекта занимает 15 секунд.
Ответ написан
Комментировать
@matperez
Мне нравится Capistrano для деплоя. Довольно легко настраивается и дополняется. Есть куча информации о том как решать типовые и не очень задачи с ним.
По миграциям ДБ ищите решения специфичные для Kohana и прикручивайте к выбранной системе деплоя. Вот например.
Ответ написан
Комментировать
@bzz
Можно попробовать ant.apache.org
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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