Single Jenkins Computer/Node, используемый более чем одним Jenkins

Меня интересует, возможно ли иметь один компьютер / узел, который будет разделен между двумя экземплярами jenkins?

Я знаю, что можно сделать две одинаковые копии конфигураций узлов на экземплярах Jenkins и изменить рабочее пространство, но я стремлюсь к этому сценарию.

Дженкинс А с Узлом А
Дженкинс Б с Узлом А

Дженкинс А начинает работу на узле А
Jenkins B переводит узел A в автономный режим

Дженкинс Б начинает работу на узле А
Jenkins A переводит узел A в автономный режим

Узел A может использоваться только один раз за раз, и не должно быть параллельных заданий, выполняемых независимо от разных рабочих областей.

Я знаю, что это может быть достигнуто, когда у вас есть один экземпляр jenkins, но как это сделать, если вам нужно использовать как минимум два из них?

ПРИМЕЧАНИЕ: оба экземпляра Jenkins расположены на разных машинах.

1 ответ

Я считаю, что плагин Jenkins Mesos это то, что вам нужно.

Используйте следующие шаги для установки и настройки:

  • шаг 1

  • шаг 2

  • шаг 3

  • step4

Конечно, вы должны были установить кластер mesos для себя, прежде чем делать это выше, см. Официальный сайт mesos. Это может стоить некоторого времени, если вы не знакомы с мезо.

И на шаге 4 вам лучше установить slave cpus равен номеру вашего реального подчиненного узла.

Принцип таков:

Сначала Mesos отправляет предложение ресурсов мастеру Jenkins Master A, а затем мастеру jenkins A запускает задачи на подчиненном узле A, поскольку ресурс теперь использовался мастером jenkins A. Предложение ресурсов больше не будет отправлено Jenkins Master B, поэтому Jenkins Master B ждет.

После завершения задания Jenkins Master A предложение ресурсов мезо для подчиненного узла A будет отправлено Jenkins Master B, после чего Jenkins Master B сможет начать задание.

Раб может быть использован Jenkins Mesos A и Jenkins Mesos B, но никогда в одно и то же время.

Надеюсь, это поможет вам.

Другие вопросы по тегам