Professional Documents
Culture Documents
ІІС Методичні Вказівки 9
ІІС Методичні Вказівки 9
ІІС Методичні Вказівки 9
Львів 2023
Мета роботи: Навчитись налаштовувати та приєднувати агент у
Jenkins.
1. ВСТУП
Агенти Jenkins - це процеси, які служать для виконання робочих
завдань на віддаленому вузлі. Агенти забезпечують масштабованість та
розподілення завдань між різними вузлами.
У Jenkins існує два типи агентів: майстер та вузол. Майстер - це
головний вузол, на якому встановлено Jenkins та з яким взаємодіють усі
інші вузли. Вузол - це вузол, на якому запускаються робочі завдання.
Агенти можуть бути запущені на різних операційних системах та
платформах, що дає можливість запускати тестування та збірку проекту на
різних середовищах. Агенти можуть бути запущені як на фізичних
машинах, так і на віртуальних машинах, контейнерах тощо.
Крім того, Jenkins також підтримує режим розподіленого виконання
завдань, коли різні агенти можуть виконувати частину завдання, щоб
прискорити процес збірки та тестування. Це дозволяє зменшити час
виконання та покращити ефективність процесу.
Загалом, використання агентів в Jenkins дозволяє забезпечити
розподілення завдань між різними вузлами, зменшити час виконання та
підвищити ефективність процесу збірки та тестування.
2. ЗАВДАННЯ
Завданням даної лабораторної роботи є створення мульти-вузлової
архітектури Jenkins, з використанням агентів приєднаних по SSH. Дані
кроки були відтворені на Oracle VirtualBox, Ubuntu 20.04, 2GB RAM, 10GB
HDD з заздалегідь встановленим Jenkins та новоствореною машиною з
такими ж характеристиками апаратного забезпечення.
2
1. Перейдіть на веб інтерфейс інструменту Jenkins за посиланням
«http://<ваша_ір_адреса>:8080»
2. Для початку переконайтесь, що встановлений плагін для того щоб
приєднувати SSH агентів. Перевірити це можна в меню “Manage
Jenkins” “Plugin Manager” “Installed Plugins” і в пошуковому
рядку наберіть «ssh». Якщо в списку що зʼявиться буде наступний
елемент:
3
7. Додайте довільний опис, в полі Remote root directory, вкажіть
директорію на віддаленій машині, яка буде використовуватись для
операцій Jenkins. Наприклад це може бути домашня директорія
(/home/<username>).
8. В полі “Launch method” оберіть варіант “Launch agents via SSH”.
Вкажіть адресу slave сервера, та оберіть обліковий запис який було
створено в кроці 4. В полі “Host Key Verification Strategy” оберіть
варіант “Non verifying Verification Strategy”. Це поле визначає політику
щодо так званого відбитку пальця SSH Unix систем. Якщо залишити
перевірку, то доведеться додавати цей відбиток у
/var/lib/Jenkins/.ssh/known_hosts, якщо ж використовувати “Non
verifying Verification Strategy” то цього робити не потрібно.
9. Після цього збережіть налаштування і якщо натиснути на
новостворений агент в списку, в меню “Log” можна глянути яким
чином відбувається процес встановлення агента.
10. Зайдіть на вкладку “Nodes” у верхньому меню, та впевніться що агент
приєднано. Якщо він значиться у списку, вказана інформація про
нього, як показано у прикладі на рисунку, агент можна вважати
успішно встановленим.
4
Корисні посилання:
Офіційна документація Jenkins про агентів:
https://www.jenkins.io/doc/book/distributed/
Посібник з налаштування агентів Jenkins:
https://www.guru99.com/jenkins-build-agents.html
Образ Docker агента Jenkins: https://hub.docker.com/r/jenkins/inbound-
agent/
Плагін Kubernetes для агентів Jenkins:
https://plugins.jenkins.io/kubernetes/
Плагін AWS EC2 для агентів Jenkins: https://plugins.jenkins.io/ec2/
Плагін Google Compute Engine для агентів Jenkins:
https://plugins.jenkins.io/google-compute-engine/
Плагін SSH для агентів Jenkins: https://plugins.jenkins.io/ssh-slaves/
Обгортка служби Windows для агентів Jenkins:
https://github.com/kohsuke/winsw