2016-02-05 2 views
0

Я новичок в Jenkins, и мне нравится знать, есть ли у одного сервера Jenkins возможность развернуть/обновить код на нескольких веб-серверах.Развертывание кода на нескольких серверах с Jenkins

В настоящее время у меня есть два веб-сервера, на которых используется python Fabric для развертывания.

Любые хорошие учебные пособия будут очень приветствоваться.

ответ

1

Одним из решений может быть объявление ваших веб-серверов как подчиненных узлов.

  • Первое, дать Дженкинс учетные данные для серверов (Логин/пароль или SSH логин + ключ или сертификат. Это может быть сконфигурирован в «Управление учетными» меню
  • Затем сконфигурируйте ведомые узлы. Прочитайте doc

Затем создайте задание несколько конфигурации. Сначала вы должны установить матрично-проектplugin. Это позволит вам отправить то же intructions развертывания на оба ваших серверах а t once

0

Поскольку вы уже используете Fabic для развертывания, я бы предложил установить Fabric на Master Jenkins и запустить Jenkins команды Fabric для развертывания на удаленных серверах. Вы можете настроить имена хостов или IP-адреса удаленных серверов в качестве параметров сборки и просто иметь команды оболочки, которые перебирают их и запускать команды Fabric. Вы можете сделать это еще дальше и развернуть ту же работу, что и dev/test/prod, используя другой набор хостов.

Я бы не стал веб-сервером подчиненных узлов. Резервные подчиненные узлы для создания заданий. Например, если вам нужно создать приложение Windows, вам понадобится ведомый Windows Jenkins. Если у вас возникла проблема с установкой Fabric на вашем ведущем Jenkins, вы можете создать подчиненный узел, отвечающий за запуск Fabric, и заставить все, что запускает команду fabric, использовать этот ведомый. Я чувствую, что это слишком сложно, но если у вас есть тонна строит на вашем хозяине, вы можете пойти по этому пути.

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