Jenkins хостингі, контроллер мен агенттер бөлек

Прага не Ковильяндағы өз машинасындағы Jenkins контроллері, құрастырулары өз орны болған агенттерге шығарылған - бұл Jenkins жобасы беретін жалғыз өлшем кеңесі және инсталляциялардың көбі елемейтін кеңес.

Tier III сертификатталған ISO 9001 ISO/IEC 27001 ISO 14001 GDPR талаптарына сәйкес

Бұл кімге арналған

Біреудің үстелінің астында тұрған Jenkins

Ол 2019 жылдан бері құрастырып келеді, қай плагиндер маңызды екенін ешкім есіне түсіре алмайды, ал бүкіл шығарылым процесі бір дискілі әрі резервтік көшірмесіз бір мұнараға тәуелді.

Өз құрастыруларын өзі жүргізетін контроллер

Оңайырақ болғандықтан орындаушылар контроллерде бөлінген, ал енді ауыр тапсырма веб-интерфейсті өзімен бірге алып кетеді - Jenkins құжаттамасы мұны дәл осы сөздермен нашар тәжірибе деп атайды.

Хостингтегі CI-ға көше алмайтын команда

Он екі жылдық конвейерлер, ешкім алмастырмаған плагин және темірмен сөйлесетін тапсырма. Мәселе Jenkins-те емес; мәселе оның астындағы машинада.

Өз машинасы нені береді

  • Жауап беруін тоқтатпайтын контроллер, өйткені құрастырулар веб-интерфейсті ұсынатын нәрседе емес, агенттерде жүреді.
  • Әр плагин жаңартуының алдында снапшоты бар NVMe-дегі JENKINS_HOME: кері қайту бүкіл кеш емес, екі шерту.
  • Бөлек хост ретінде қосылып, SSH немесе кіріс протоколы арқылы жалғанған, контроллерден өзге өлшемдегі агенттер.
  • AS204057 ішіндегі статикалық IPv4: ішкі тіркелім, артефакттар қоймасы немесе орналастыру нысаны контроллерді адрес бойынша рұқсат ете алады.
  • Қасында керек кез келген агент - құрастыруға Linux, тапсырма талап еткенде бізден лицензиясы бар Windows Server.
  • Tier III нысандары, тарифке кіретін резервтік көшірме және кеңседегі кондиционерге тәуелді емес машина.

Конвейер шын мәнінде не істейтініне қарай өлшенген

Jenkins жобасы темір туралы жалғыз санды жариялаудан әдейі бас тартады, өлшем таңдауды дәл емес ғылым деп атайды және контроллер жадын шағын инсталляция үшін 200 МБ пен үлкені үшін 70 ГБ және одан көп аралығына қояды. Оның орнына жұмыс қайда кететінін анық айтады: контроллерде орындаушылар бөлмеңіз, өйткені құрастыру оны шамадан тыс жүктеп, құлатуы мүмкін. Сондықтан контроллерді интерфейс, плагиндер және тапсырмалар тарихы үшін өлшеңіз, ал құрастыруларды агенттерге беріңіз. Төлем пішіні жөнінде бір ескерту: тұрақты айлық хост тыныш аптада да сол ақшаны тұрады, ал хостингтегі CI минуттары онда ештеңе тұрмайды - бірақ Jenkins әдетте дерлік күн сайын жүреді, ал дәл сонда бұл шешім ұтады.

Бірінші контроллер
16.49
айына

Тапсырыс беру
шағын команда, агенттер кейінірек
2 vCPU
8 GB RAM
80 GB NVMe
1 статикалық IPv4
1 апталық сақтық көшірме кіреді
Агенттері бар контроллер
36.01
айына

Тапсырыс беру
құрастыру тарихына орны бар контроллер
4 vCPU
16 GB RAM
240 GB NVMe
1 статикалық IPv4
1 апталық сақтық көшірме кіреді
Құрастыру фермасы
65.98
айына

Тапсырыс беру
көп тапсырма, көп агент, ұзақ тарих
8 vCPU
32 GB RAM
320 GB NVMe
1 статикалық IPv4
1 апталық сақтық көшірме кіреді

Jenkins-ті Debian не Ubuntu-ға қалай орнату керек

Тұрақты LTS желісі, Jenkins жобасының өз репозиторийінен, олар құжаттаған тәртіппен. Java 21 немесе одан жаңасы - ұсыныс емес, талап.

  1. Java орнатыңыз

    sudo apt update
    sudo apt install fontconfig openjdk-21-jre
    java -version

    Jenkins Java 21 немесе одан жаңасын талап етеді. fontconfig құжатталған командада қатар тұрады, өйткені сурет салатын плагиндер онсыз түсініксіз түрде істен шығады.

  2. Jenkins LTS репозиторийін қосыңыз

    sudo wget -O /etc/apt/keyrings/jenkins-keyring.asc \
      https://pkg.jenkins.io/debian-stable/jenkins.io-2026.key
    echo "deb [signed-by=/etc/apt/keyrings/jenkins-keyring.asc]" \
      https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
      /etc/apt/sources.list.d/jenkins.list > /dev/null

    debian-stable - LTS желісі; жай debian жолы - апталық. Қолтаңба кілті ротацияланады, сондықтан ағымдағы файл атауын ескі нұсқаулықтан емес, Jenkins бетінен алыңыз.

  3. Орнатып, іске қосыңыз

    sudo apt update
    sudo apt install jenkins
    sudo systemctl enable jenkins
    sudo systemctl start jenkins

    Jenkins 8080 портын тыңдайды және өзінің jenkins пайдаланушысынан жүреді, ал маңыздының бәрі /var/lib/jenkins ішінде жатады. Дәл осы каталогты снапшотпен және резервтік көшірмемен қамтисыз.

  4. Бірінші кіруді ашыңыз

    sudo cat /var/lib/jenkins/secrets/initialAdminPassword

    Серверді 8080 портында ашып, осы мәнді қойыңыз. Баптап жатқанда оны бүкіл интернетке қолжетімді қалдырмаңыз - біздің VPN-шлюзіміздің артына жасырыңыз немесе алдымен 8080 портын кеңсеңіздің адресімен шектеңіз.

  5. Құрастыруларды контроллерден алыңыз

    # Manage Jenkins -> Nodes -> Built-In Node -> set executors to 0
    # then Manage Jenkins -> Nodes -> New Node for each agent host

    Бұл - Jenkins құжаттамасы тікелей айтатын жалғыз өлшем кеңесі: контроллерде орындаушылар бөлу құрастыруға оны шамадан тыс жүктеп, құлатуға мүмкіндік береді. Кірістірілген түйінді нөл орындаушыға қойып, агент хосттарын қосыңыз, оларды құжаттама әр тапсырмаға бейімделген емес, әмбебап әрі алмастырылатын күйде ұстауды ұсынады.

  6. Агентті SSH арқылы жалғаңыз

    sudo -u jenkins ssh-keygen -t ed25519 -f /var/lib/jenkins/.ssh/agent
    sudo -u jenkins ssh-copy-id -i /var/lib/jenkins/.ssh/agent.pub jenkins@AGENT-HOST

    Жабық кілтті SSH Username with private key тіркелгі деректері ретінде қосып, содан кейін түйінді SSH іске қосу әдісімен жасаңыз. Әр агент байланысы контроллерге бірнеше ағын мен 2 МБ-тан сәл артық тұрады, сондықтан контроллер өлшемін бір уыс агент емес - плагиндер мен тапсырмалар тарихы белгілейді.

Ресми құжаттамамен салыстырылған күні 2026-08-15 — дереккөзді оқу

Біз кім емеспіз

  • Біз Jenkins жобасы емеспіз. Jenkins - Linux Foundation сауда белгісі, ал бағдарламалық жасақтама оларға тиесілі; мұндағы ештеңе олармен мақұлданбаған. Біз ол жүретін машинаны сатамыз.
  • Біз сіздің плагиндеріңізді қолдамаймыз. Jenkins инсталляциялары дәл плагин жаңартуларында бұзылады, ал 60 плагиніңіздің қайсысы маңызды екенін білетін адам - сіздің жағыңызда, дегенмен әр жаңартудың алдындағы снапшот - біздің жағымызда.
  • Біз сіздің тапсырмаларыңызды баға құрамында көшірмейміз. Терезе мен JENKINS_HOME көшірмесіне көмектесеміз, ал қалғанын, егер бірге емес, сіз үшін жасалуын қаласаңыз, бағалаймыз.
  • Мұнда басқарылатын Jenkins басқару жазықтығы жоқ. Жаңартуларды толығымен басқа біреу мойнына алсын десеңіз, адал жауап - хостингтегі CI өнімі, ал бұл ол емес.
  • Windows агенттеріне Windows Server лицензиялары керек, оларды біз серверде бере аламыз, бірақ құрастыруға керек кез келген құрал лицензиясы сіздікі болып қала береді.

Топтар кеш байқайтын бөліктер

  • JENKINS_HOME - бүкіл инсталляция: конфигурация, тапсырмалар тарихы, тіркелгі деректері, плагиндер. Осының көшірмесін жасаңыз - контроллер бір сағатта қалпына келеді; өткізіп жіберсеңіз - мүлде қалпына келмейді.
  • Әр плагин жаңартуының алдында снапшот. Бұл - жұмыс істеп тұрған Jenkins-ті құлатуы ең ықтимал өзгеріс, ал снапшот оны екі шертумен кері қайтуға айналдырады.
  • Контроллерде нөл орындаушы - қалау емес, құжатталған ұсыныс. Контроллерді шамадан тыс жүктейтін құрастыру веб-интерфейсті өзімен бірге алып кетеді.
  • Агенттер алмастырылатын болуы керек. Құжаттама әр тапсырмаға арнайы бапталған бір хостың орнына әмбебап, алмастырылатын агенттерді жақтайды, өйткені арнайы бапталғаны әрдайым дәл сол істемей тұрғаны болып шығады.
  • 8080 порты - қорғалмаған Jenkins қалдыратын орын емес. Оны бірінші кіруден кейін емес, оның алдында VPN-шлюздің немесе рұқсат етілген адрестер тізімінің артына жасырыңыз.
  • Контроллер жады құрастырулардың қаншалықты ауыр екенімен емес, плагиндермен, тапсырмалар санымен және құрастыру тарихымен өседі - ол жүктеме агенттерге тиесілі.

Провайдердегі CI минуттары мен өз runner-іңіз

Провайдер хостингіндегі CI минуттарыDCXV-дегі раннер
Не үшін төлейсізЖоба өмір сүріп тұрғанда әр тапсырманың әр минуты үшінТұрақты айлық хост үшін, конвейер сол айда не істесе де
Баяулаған құрастыруБаяу күйінде қалған әр айда қымбатырақ түседіАртық ештеңе тұрмайды - машина әлдеқашан төленген
Docker қабаттар кешіӨзіңіз жүктеп салып, кері жүктемесеңіз, әр тапсырмада суықЖергілікті NVMe-де жылы, тапсырмалар арасында да, күндер арасында да
ПараллельдікКөтеретін тариф сатысыӨз конфигурация файлыңызда қоятын сан
Checkout қайда түседіОртақ машиналар паркіне, көбіне бекіте алмайтын аймаққаПрага не Ковильяндағы бір машинаға, Кипр келісімшарты бойынша
Шығыс адресЕштеңемен рұқсат ете алмайтын үлкен ортақ диапазонAS204057 ішіндегі бір статикалық IPv4, рұқсат етуге өзіңіздікі
Машина нені ұстай аладыRunner образы кездейсоқ әкелгендіБір рет орнатқан кез келген құралдар тізбегін, лицензияны немесе сынақ деректері жиынтығын

Бұл сіздің хостыңызда қалай іске қосылады

1

Конвейер не істейтінін айтыңыз

Бүгін орындайтын ең ауыр тапсырма, олардың қаншасы қатар жүруі керек және ол контейнер образдарын құрастыра ма. Хостты болжамсыз өлшеуге осы жеткілікті.

2

Біз машинаны тапсырамыз

Прага немесе Ковильян, root қатынасы және статикалық IPv4, он минуттан аз уақытта. Runner әлдеқашан образдың ішінде болса, өз образыңызды әкеліңіз.

3

Осы беттегі қадамдық нұсқаулықты орындаңыз

Бұл өндірушінің реттілігі, блог жазбасынан емес, оның қазіргі құжаттамасынан алынған, әрі таза хостта бірнеше минут алады.

4

Суретке түсіріп алыңыз, содан соң екіншісін қосыңыз

Бірінші конвейер жасыл болған бойда снапшот жасаңыз, сонда келесі машина нөлден құру емес, қалпына келтіру болады. Пул бір хостты алыпқа айналдырумен емес, хост қосумен өседі.

Неліктен бізді таңдайды

  • Tier III сертификатталған нысандар, нысан SLA 99,982 %
  • Өз желісі, AS204057, IPv4 және IPv6
  • Орташа жауап беру уақыты шамамен 10 минут болатын 24/7/365 қолдау
  • Кипрдегі компания, ЕО юрисдикциясы, 2007 жылдан GDPR-ге сәйкестік

FAQ

- Jenkins-ті Ubuntu не Debian-ға орнату үшін не керек?

Java 21 немесе одан жаңасы, содан кейін Jenkins жобасының apt репозиторийі. fontconfig пен openjdk-21-jre орнатыңыз, pkg.jenkins.io ішінен debian-stable үшін keyring мен sources жолын қосыңыз, apt install jenkins, қызметті қосып, іске қосыңыз, содан кейін оны /var/lib/jenkins/secrets/initialAdminPassword ішіндегі мәнмен ашыңыз. Jenkins 8080 портын тыңдайды. Толық реттілік осы бетте

- Jenkins контроллеріне қанша жедел жады керек?

Jenkins жобасы бір санды атаудан әдейі бас тартады, өлшем таңдауды дәл емес ғылым деп атайды және контроллер жадын шағын инсталляция үшін 200 МБ пен өте үлкені үшін 70 ГБ немесе одан көп аралығына қояды. Оны плагиндер, тапсырмалар саны және құрастыру тарихы масштабтайды, құрастырулардың ауырлығы емес - өйткені құрастырулар контроллерде жүрмеуі керек. 8 ГБ шағын команда үшін ыңғайлы бастама

- Құрастырулар Jenkins контроллерінде жүруі керек пе?

Жоқ, әрі құжаттама мұны тікелей айтады: контроллерде орындаушылар бөлу - нашар тәжірибе, өйткені құрастыру оның процессорын не жадын шамадан тыс жүктеп, оны құлатуы мүмкін. Кірістірілген түйінді нөл орындаушыға қойып, агенттер қосыңыз. Жоба сондай-ақ әр тапсырмаға бөлек хост бейімдеудің орнына агенттерді әмбебап әрі алмастырылатын ұстауды ұсынады

- Jenkins-тің резервтік көшірмесін қалай жасаймын?

Пакеттен орнатқанда /var/lib/jenkins болатын JENKINS_HOME - бүкіл инсталляция: конфигурация, тапсырма анықтамалары, құрастыру тарихы, тіркелгі деректері және плагиндер. Осының көшірмесін жасаңыз - контроллер бір сағатта қалпына келеді. Мұндағы әр тариф резервтік көшірмені қамтиды, ал әр плагин жаңартуының алдындағы снапшот Jenkins-ті бұзуы ең ықтимал өзгерісті екі шертумен кері қайтуға айналдырады

- Құрастыру агентін қалай жалғаймын?

Әдеттегі жол - SSH: jenkins пайдаланушысынан кілт жасаңыз, ашық жартысын агент хостына қойыңыз, жабық жартысын SSH тіркелгі деректері ретінде қосып, түйінді SSH іске қосу әдісімен жасаңыз. Әр агент байланысы контроллерге бірнеше ағын мен 2 МБ-тан сәл артық тұрады, сондықтан контроллер өлшемін агенттер белгілемейді

- Jenkins-ті 8080 портында қалдыру қауіпсіз бе?

Ашық интернетте жоқ. Оны бірінші кіруден кейін емес, оның алдында біздің VPN-шлюзіміздің артына жасырыңыз немесе портты өз адрестеріңізбен шектеңіз - әкімшінің бастапқы құпия сөзі оған дейін бүкіл әлемге жауап беріп тұрған сервердегі файлда жатады. AS204057 ішіндегі статикалық IPv4 қарсы жақтағы рұқсатты да оңайлатады

Егер сізге көмек қажет болса немесе қосымша сұрақтарыңыз болса, менеджерлерге хабарласыңыз немесе қолдау қызметіне келесі мекенжай бойынша жазыңыз support@dcxv.com

Бастауға дайынсыз ба?

Бұлттық серверлер 15 €/айдан бастап
  • Ай сайын төлем
  • Қосу ақысы жоқ
  • Байлау жоқ