Čo je Jenkins?

  • Jenkins je nástroj na automatizáciu nepretržitej integrácie (open source), ktorý je nainštalovaný na serveri, na ktorom sa vytvára. Nepretržitá integrácia znamená proces, pri ktorom vývojári odovzdajú svoj kód do spoločne vytvoreného úložiska, len čo dokončia vývoj.
  • V procese CI / CD tiež vedie k zvýšeniu režijných nákladov, a preto máme v Jenkinse plynovody na udržiavanie používateľov a oprávnení, ktoré sú im označené. To isté platí pre rastúce projekty.
  • Keď sa budova zväčší, zvýši sa zodpovedajúca potreba vytvoriť testovacích agentov spolu s ich údržbou.

Definícia Jenkins -

  • Vymedzenie pojmu Jenkins poskytnuté spoločnosťou Jenkins.io je takéto -

„Jenkins je samostatný automatizovaný server s otvoreným zdrojovým kódom, ktorý možno použiť na automatizáciu všetkých druhov úloh súvisiacich s budovaním, testovaním a dodávkou alebo nasadením softvéru“.

  • Keď sa teda predstaví koncepcia nepretržitej integrácie alebo nepretržitého zavádzania, do obrazu sa dostanú nástroje ako Jenkins a kruhy. Ale tu by sme hovorili iba o Jenkinsovi.

Pochopenie Jenkins -

  • Plynovod súvislej integrácie je sada sekvenčných alebo paralelných úloh, tieto úlohy sú navrhnuté tak, aby vykonávali množinu úloh, ktoré sú nakonfigurované pomocou rozhrania GUI.
  • Keďže bolo ťažké udržať rastúci počet projektov, stavať, stavať revízie a kópie, zavádza sa koncepcia plynovodu Jenkins. Tento plynovod sa nazýva lenkinskins.
  • Jenkins tiež podporuje technológie typu docker a kubernetes, v ktorých sa prevádzkujú mikroservisy.
  • Niekedy sa objavujú určité druhy problémov, ako je pomalosť v dôsledku hromadného generovania protokolov.
  • Jenkins môže mať za následok vysoké využitie procesora, úmerné počtu používateľov pristupujúcich k Jenkins.
  • Jenkins je vertikálne (vyžaduje zmenu hardvéru) a horizontálne škálovateľnú (vyžaduje viac majstrov Jenkins).
  • Je vidieť, že mať jedného majstra Jenkinsa je príjemné, ale kompromis musí byť stanovený medzi dostupnosťou a ľahkou manipuláciou, ako v prípade, že sa jeden kapitán dostane dole, zastaví to podnikanie.
  • Otrokyne Jenkins rovnako prispievajú k testovaniu spolu s budovou, Jenkins poskytuje koncepciu paralelného testovania, vďaka ktorému je potrubie rýchlejšie.
  • Vysoká dostupnosť je zabezpečená spolu s prepínaním pri zlyhaní s primárnym a sekundárnym systémom.

Ako Jenkins funguje -

Predtým, ako začnete pracovať s Jenkinsom, sú splnené určité predpoklady.

Odporúčaný hardvér je nasledujúci -

  1. RAM> = 1 GB
  2. Miesto na disku> = 50 GB by stačilo.

Požiadavky na softvér sú nasledujúce:

  1. Windows / Linux (najlepšie)
  2. JDK 8
  3. Musí existovať webový kontajner kompatibilný s Servlet 3.1.

Existujú dve architektúry, v ktorých môžeme navrhnúť dizajn -

  1. Master-slave architecture
  2. Architektúra Master-Master
  • Podriadené uzly môžeme nastaviť na stránke „Spravovať uzly“. Potom zadajte uzly a ich názvy, potom nastavte vlastnosti uzlov, priraďte podriadené jednotky k jednotkám master a potom spustite podriadené uzly.
  • Existujú určité základné technológie, ktoré tam majú byť -
  1. Správca balíkov uzlov a GIT
  2. Eclipse IDE a Maven
  3. databázy
  4. Nástroje na testovanie typu Junit alebo selén pre automatické testovanie
  5. Akékoľvek prostredie ako Docker (najlepšie) by to urobilo.

Funguje v troch fázach - akcie predbežného zostavenia, akcie zostavenia a akcie po vytvorení

V akciách PreBuild - Existujú minimalizátory JS, ktoré minimalizujú a skomprimujú kód pred jeho vložením do zostavenia, a to pomocou doplnkov pred zostavením. Spolu s týmto builderom mravcov možno v požadovaných prípadoch vyvolať šarže okna, shellové príkazy a vyvolať mavenové ciele, aby sa poskytli konfiguračné súbory.

Doplnky pre zostavenie robia tlačenie kódov, dotazovanie, zostavovanie, balenie a publikovanie.

Vo fáze Budovať akcie - kód predložený do tejto fázy z predchádzajúcej fázy sa zostaví a otestuje.

Vo fáze Post Build - tu sú kódy archivované do nasaditeľných formátov a nakoniec sú tlačené.

Prečo používať Jenkins -

  • Kompatibilné s nasadením mikroprocesov s kubernetami a dokmi
  • Ďalšia aplikačná éra by sa týkala iba vývoja založeného na mikroprocesoch, pretože potreba škálovateľnosti a dostupnosti existuje pre určité služby iba v maximálnych aplikačných scenároch. Takže nasadenie a služby môžu byť tlačené automatizovaným spôsobom s Jenkinsom, len musíte dať vstupné skripty shellu a môže vám urobiť zvyšok úlohy za vás.
  • Potrubie je podporované.

Čo môžete robiť s Jenkinsom -

  • Vytvorte proces v dvoch architektúrach, ako je uvedené vyššie.
  • Ak chcete iba jedného pána, môžete ísť týmto prístupom, ak potrebujete prispôsobiť obmedzenia dostupnosti, môžete ísť s mnohými pánmi.
  • Existuje veľa doplnkov s otvoreným zdrojom, ktoré automatizovane spracovávajú viac úloh.
  • Monolitické aplikácie alebo aplikácie založené na mikroprocesoch sú dobre podporované.

Výhody Jenkins -

  1. Je to otvorený zdrojový a server so stálou integráciou.
  2. Jenkins teraz vedie potrubie.
  3. Prostredie doručovania je teraz poskytované z ľubovoľného jazyka.
  4. Proces dodávania produktu sa zrýchľuje, a tým sleduje agilný model v úzkom spojení.
  5. Jenkins je nástroj CI / CD.
  6. K dispozícii sú funkcie ako Kontrola prístupu na základe rolí.
  7. Jenkins je škálovateľná, čím je možné vyriešiť problémy s dostupnosťou a škálovateľnosťou.
  8. Distribuované tímy môžu pracovať a ich správa je teraz jednoduchá.
  9. Je tam podpora kontajnerov.
  10. Server LDAP je neoddeliteľnou súčasťou jeho architektúry.
  11. Jenkins 2.0 je tiež spätne kompatibilný.
  12. Konfiguračné stránky pracovných stránok sa objavili improvizovaným spôsobom s programom Jenkins 2.0

Prečo potrebujeme Jenkins -

  • Pre proces CI / CD
  • Tieto procesy môžu byť navrhnuté automatizovaným spôsobom, kódovacie zariadenia odovzdajú kód, zostavenie so zodpovedajúcimi novými revíziami sa uskutoční jednoduchým kliknutím (spustenie daných skriptov).
  • Je dobre podporovaný open-source pluginmi a reportovacími nástrojmi ako Ant, Maven, Gradle, BitBucket, NodeJs, atď.

Kto je tým pravým publikom na učenie Jenkins -

  • Ktokoľvek v úlohe DevOps by rád začlenil tento nástroj na automatizáciu procesu výstavby.
  • Noví weboví vývojári hľadajúci kariéru ako DevOps musia vedieť, ako tento nástroj funguje a ako môžeme nakonfigurovať proces tvorby zostavy.

Ako vám táto technológia pomôže v kariérnom raste -

  • Tento nástroj sa postupom času vyvíjal a nové verzie prichádzajú s podporou architektúry mikroservisov. Je to architektúra, ktorá sa má dodržiavať vo všetkých veľkých projektoch, ako je Netflix.

Záver -

Jenkins je nástroj CI / CD, open-source, kompatibilný s rôznymi doplnkami, uľahčuje život, keď je potrebné dodávať softvér na agilnom základe.

Odporúčané články

Toto bol sprievodca tým, čo je Jenkins. Tu sme diskutovali o tom, ako to funguje, výhody a kariérny rast Jenkins. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. Ako nainštalovať Jenkins
  2. Príkazy Maven
  3. Alternatívy JIRA
  4. Čo je selén?
  5. Jenkins vs Hudson

Kategórie: