Дженкинс быстро кластеры сборки

О Дженкинс кластера

Одновременно выполнять несколько задач, отдельные возможные узкие места в производительности на Дженкинс, использование Дженкинс кластера может эффективно решить эту проблему, позволяя несколько машин для обработки этих задач может быть дисперсной давление на скрытой точки отказа в автономной версии Дженкинс также имеет дисперсия, сегодня для борьбы с быстрым построения кластеров Дженкинс, Дженкинс версии 2.190.2;

Как быстро создать кластеры

По Docker можно сохранить большую часть подготовительной работы, вам нужно только установить докер на компьютерах Linux, дополненный небольшое количеством для того, чтобы завершить кластерную структуру и операции;

Экологическая информация

Фактическое использование окружающей среды в общей сложности три компьютера, их параметры одинаковы, а именно:

  1. Операционная система: релиз CentOS Linux 7.6.1810
  2. Отключите брандмауэр
  3. Докер: 1.13.1

Три компьютер информации выглядит следующим образом:

Hostname IP-адрес эффект
мастер 192.168.133.131 Дженкинс кластера главного узла для предоставления веб-сервисов
agent1 192.168.133.132 Дженкинс затем работа на узле кластера первого, метка Maven
agent2 192.168.133.133 Дженкинс затем работа на кластере 2 - го узла, метка Gradle

Он рекомендует agent2 память узла, чем 4G, потому что следующий боевых действий будет компилировать сборки пружинный каркас с agent2, требования к памяти немного;

Препараты

  1. Все операции за счет корневой;
  2. Создайте папку на каждом компьютере / USR / местные / Jenkins

Дженкинс создал мастер

  1. Log мастер машины, выполните следующую команду:
docker run \
  -u root \
  -idt \
  --name master \
  -p 8080:8080 \
  -p 50000:50000 \
  -v /usr/local/jenkins:/var/jenkins_home \
  -v /var/run/docker.sock:/var/run/docker.sock \
  jenkinsci/blueocean:1.19.0复制代码
  1. Выполнение Docker Мастер журналов , журнал отображается Дженкинс ключи, как показано в красной коробке консоли:
    Here Вставка рисунка Описание
  2. Браузер введите адрес: HTTP: //192.168.133.131: 8080, Дженкинс отображает страницу Логина, как показано ниже, вы можете войти войти ключи красного поля введите местоположение вы только что скопированным:
    Here Вставка рисунка Описание
  3. Выберите установку рекомендуемых плагинов :
    Here Вставка рисунка Описание
  4. Дождитесь установки плагина завершения Интернет:
    Here Вставка рисунка Описание
  5. Далее следует создать администратора и использовать примеры URL - адрес операции здесь не сказать, по своему усмотрению в соответствии с реальной ситуацией, до

    сих пор, мастер Дженкинс уже быть на месте, следующий будет agent1 и agent2 в качестве рабочего узла включается в кластер;

Регистрация agent1

  1. Дженкинс добавлены на узлах страниц, работающих на следующем рисунке, сначала введите страницу управления узлом:
    Here Вставка рисунка Описание
  2. Ниже, новый узел называется AGENT1 :
    Here Вставка рисунка Описание
  3. Информационные детали следующего узла ниже, обратите внимание на содержание четыре красных коробки должна быть одинаковыми и в:
    Here Вставка рисунка Описание
  4. Отображает список машин после того, как успешно сохранено, как показано ниже, красный крест на средствах значка, что машина не в сети (в это время agent1 нет доступа), нажмите на красной коробке:
    Here Вставка рисунка Описание
  5. Как показано ниже, красная коробка agent1 команды запуска команды, машина выполнит команду добавляемой в кластер как agent1 из:
    Here Вставка рисунка Описание
  6. Обратите внимание на красный прямоугольник на карте agent.jar называется agent.jar загрузки файла ссылку для загрузки файла agent1 PC / USR / местные / Дженкинс каталог;
  7. SSH Войти agent1 компьютер, выполните следующую команду, вы можете присоединиться к agent1 Jenkins кластера:
docker run \
  -u root \
  -idt \
  --name agent \
  -v /usr/local/jenkins:/usr/local/jenkins \
  bolingcavalry/openjdk-with-sshpass:8u232 \
  java -jar /usr/local/jenkins/agent.jar \
  -jnlpUrl http://192.168.133.131:8080/computer/agent1/slave-agent.jnlp \
  -secret 44c3e8d1531754b8655b53294bbde6dd99b3aaa91a250092d0d3425534ae1058 \
  -workDir "/usr/local/jenkins"复制代码

Вышеуказанная команда во второй половине, что ява -jar ...... это agent1 картина красный квадрат перед командой запуска, единственное , что изменение является agent.jar в абсолютный путь / USR / местные / Jenkins / агента .jar

  1. Зеркальный выше команд является bolingcavalry / OpenJDK-с-sshpass: 8u232 , Dockerfile , которое следует, показывая очень простой, установлен внутри зеркала OpenJDK sshpass, такой контейнер может занять пароль удаленной машины при выполнении команды SSH без ждет пользователя , чтобы ввести пароль, то легко выполнить команду SSH сценарий оболочки:
FROM openjdk:8u232

ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install --assume-yes sshpass复制代码
  1. Дженкинс пошел на сайт, чтобы увидеть список узлов, как показано ниже, вы можете увидеть agent1 успешно присоединились:
    Here Вставка рисунка Описание

Регистрация agent2

agent2 способ присоединиться к кластеру и agent1 в основном те же, только следующие два очка, чтобы отметить:

  1. Дженкинс создать узел на странице, имя agent2
  2. agent2 метка Gradle , красная коробка , как показано ниже:
    Here Вставка рисунка Описание
  3. На данный момент agent2 также присоединился к успеху:
    Here Вставка рисунка Описание


    На этом этапе программа установки Дженкинс кластера завершена, эти два узла с разными ярлыками, следующая статья , «трубопровод Дженкинс под реальным кластером» , мы создаем задачу трубопровода в этой кластерной среде, и по ярлыку Он назначается на другой узел, многоузловой выполнения параллельного;

Добро пожаловать на номер общественного беспокойства: Программист Чэнь Синь

рекомендация

отjuejin.im/post/5dd01aaa518825638b753766