Jenkins-opetusohjelma Jatkuva integraatio Jenkinsin avulla | Edureka



Jenkins Tutorial on Jenkins-blogisarjan toinen blogi. Tässä blogissa kerrotaan Jenkinsin hajautetusta arkkitehtuurista ja siitä, miten rakennelma luodaan Jenkinsin avulla.

Jenkins-opetusohjelma

Jenkins on yksi tärkeimmistä työkaluista . Toivon, että olet lukenut edellisen blogini . Tässä Jenkinsin opetusblogissa keskityn Jenkinsin arkkitehtuuriin ja Jenkins rakentaa putkilinjaa. Tämän lisäksi näytän sinulle, kuinka voit luoda rakennuksen Jenkinsissä.

Ennen kuin jatkamme Jenkins-opetusohjelmaa, edellisen blogin tärkeimmät otteet ovat:





  • Jenkinsä käytetään integroimaan kaikki DevOps-vaiheet laajennusten avulla.
  • Yleisimmin käytetyt Jenkins-laajennukset ovat Git, Amazon EC2, Maven 2 -projekti, HTML-julkaisija jne.
  • Jenkinsillä on reilusti yli 1000 laajennusta ja147 000 aktiivista asennusta ja yli miljoona käyttäjää ympäri maailmaa.
  • Jatkuvan integroinnin avulla kaikki lähdekoodiin tehdyt muutoksetOnrakennettu. Se suorittaa myös muita toimintoja,se riippuu jatkuvaan integrointiin käytetystä työkalusta.
  • Nokia siirtyi Nightly-rakennuksesta jatkuvaan integraatioon.
  • Prosessissa ennen jatkuvaa integraatiota oli monia puutteita. Tämän seurauksena ohjelmistojen toimittaminen ei ollut vain hidasta, mutta ohjelmistojen laatu ei myöskään ollut merkin mukainen. Kehittäjillä oli myös vaikea löytää virheitä ja korjata niitä.
  • Jatkuva integraatio Jenkinsin kanssa voitti nämä puutteet käynnistämällä jatkuvasti rakennuksen ja testin jokaiselle lähdekoodiin tehdylle muutokselle.

Nyt on oikea aika ymmärtää Jenkinsin arkkitehtuuri.

Jenkins-arkkitehtuuri

Tarkistetaan itsenäinen Jenkins-arkkitehtuuri, jonka olen selittänyt sinulle , alla oleva kaavio kuvaa samaa.



Jenkinsin itsenäinen arkkitehtuuri - Mikä on Jenkins - Edureka

Tämä yksittäinen Jenkins-palvelin ei riittänyt täyttämään tiettyjä vaatimuksia, kuten:

  • Joskus saatat tarvita useita eri ympäristöjä testataksesi rakennuksiasi. Tätä ei voi tehdä yhdellä Jenkins-palvelimella.
  • Jos suurempia ja raskaampia projekteja rakennetaan säännöllisesti, yksi Jenkins-palvelin ei voi yksinkertaisesti käsitellä koko kuormitusta.

Edellä mainittujen tarpeiden tyydyttämiseksi otettiin käyttöön Jenkinsin hajautettu arkkitehtuuri.



Jenkinsin hajautettu arkkitehtuuri

Jenkins käyttää Master-Slave-arkkitehtuuria hajautettujen koontiversioiden hallintaan. Tässä arkkitehtuurissa isäntä ja orja kommunikoivat TCP / IP-protokollan kautta.

Jenkins Master

Tärkein Jenkins-palvelimesi on Master. Päällikön tehtävä on hoitaa:

  • Rakennustöiden ajoitus.
  • Lähetysrakennukset orjille varsinaista suoritusta varten.
  • Valvo orjia (mahdollisesti vie heidät tarvittaessa verkkoon ja offline-tilaan).
  • Rakennustulosten tallentaminen ja esittäminen.
  • Jenkinsin pääesimerkki voi myös suorittaa rakennustöitä suoraan.

Jenkinsin orja

Slave on Java-suoritustiedosto, joka toimii etäkoneella. Seuraavat ovat Jenkins Slavesin ominaisuudet:

miten käyttää spyder python
  • Se kuulee Jenkins Master -instanssin pyynnöt.
  • Orjia voi käyttää useilla käyttöjärjestelmillä.
  • Orjan tehtävä on tehdä niin kuin heille käsketään, mikä tarkoittaa Mestarin lähettämien rakennustöiden suorittamista.
  • Voit määrittää projektin toimimaan aina tietyllä orjakoneella tai tietyn tyyppisellä orjakoneella, tai yksinkertaisesti antaa Jenkinsin valita seuraava käytettävissä oleva orja.

Alla oleva kaavio on itsestään selvä. Se koostuu Jenkins Masterista, joka hallinnoi kolmea Jenkins Slave -sovellusta.

Katsotaan nyt esimerkkiä, jossa Jenkinsia käytetään testaamiseen eri ympäristöissä, kuten: Ubuntu, MAC, Windows jne.

Alla oleva kaavio edustaa samaa:

Seuraavat toiminnot suoritetaan yllä olevassa kuvassa:

  • Jenkins tarkistaa Git-arkiston säännöllisin väliajoin mahdollisten lähdekoodiin tehtyjen muutosten varalta.
  • Jokainen koontiversio edellyttää erilaista testausympäristöä, mikä ei ole mahdollista yhdelle Jenkins-palvelimelle. Testauksen suorittamiseksi eri ympäristöissä Jenkins käyttää erilaisia ​​orjia, kuten kaaviossa esitetään.
  • Jenkins Master pyytää näitä orjia suorittamaan testauksen ja luomaan testiraportit.

Jenkins rakentaa putkilinjaa

Sitä käytetään tietämään, mitä tehtävää Jenkins parhaillaan suorittaa. Useimmat kehittäjät tekevät usein useita eri muutoksia kerralla, joten on hyödyllistä tietää, mikä muutos testataan tai mikä muutos istuu jonossa tai mikä rakenne on rikki. Tässä putkilinja tulee kuvaan. Jenkins-putkilinja antaa sinulle yleiskuvan testien tasosta. Rakenneputkistossa koko rakennus on jaettu osiin, kuten yksikkötesti, hyväksyntätesti, pakkaus, raportointi ja käyttöönotto. Putkilinjan vaiheet voidaan suorittaa sarjana tai rinnakkain, ja jos yksi vaihe onnistuu, se siirtyy automaattisesti seuraavaan vaiheeseen (tästä syystä putken nimen merkitys). Alla oleva kuva osoittaa, kuinka moninkertainen putkilinja näyttää.

Toivottavasti olet ymmärtänyt teoreettiset käsitteet. Pidetään nyt hauskaa käytännön kanssa.

Luon uuden työpaikan Jenkinsiin, se on Freestyle-projekti . Saatavilla on kuitenkin 3 muuta vaihtoehtoa. Katsotaanpa Jenkinsin käytettävissä olevia rakennustöitä.

Freestyle-projekti:

Freestyle-rakennustyöt ovat yleiskäyttöisiä rakennustöitä, mikä tarjoaa maksimaalisen joustavuuden.Freestyle-rakennustyö on joustavin ja konfiguroitavin vaihtoehto, ja sitä voidaan käyttää minkä tahansa tyyppisiin projekteihin. Asennus on suhteellisen yksinkertaista, ja monet täällä määrittelemistämme vaihtoehdoista näkyvät myös muissa rakennustöissä.

Monikonfigurointityö:

'Monikokoonpanoprojekti' (jota kutsutaan myös 'matriisiprojektiksi') antaa sinun suorittaa saman koontityön eri ympäristöissä. Sitä käytetään sovellusten testaamiseen erilaisissa ympäristöissä, erilaisilla tietokannoilla tai jopa erilaisilla koontikoneilla.

Seuraa ulkoista työtä:

”Monitor an external job” -kehitystyön avulla voit seurata ei-vuorovaikutteisia prosesseja, kuten cron-töitä.

Maven-projekti:

“Maven2 / 3-projekti” on rakennustyö, joka on erityisesti mukautettu Maven-projekteihin. Jenkins ymmärtää Maven-pom-tiedostot ja projektirakenteet ja voi käyttää pom-tiedostosta saatuja tietoja vähentääkseen työtä, joka sinun on tehtävä projektisi määrittämiseksi.

Tässä on video Jenkins-opetusohjelmasta, jonka avulla ymmärrät paremmin Jenkinsiä. Katso tämä Jenkins-opetusvideo.

Jenkinsin käytön aloittaminen | Jenkins ja DevOps -opetusohjelma Jenkins aloittelijoille | Edureka

Rakennuksen luominen Jenkinsin avulla

Vaihe 1: Valitse Jenkins-käyttöliittymän etusivulta Uusi kohde.

Vaihe 2: Kirjoita nimi ja valitse Freestyle-projekti .

Vaihe 3: Tällä sivulla määritetään työn kokoonpano. Kuten huomaat nopeasti, on olemassa useita asetuksia, kun luot uuden projektin.Tällä asetussivulla sinulla on myös mahdollisuus Lisää koontivaihe suorittaa ylimääräisiä toimintoja, kuten komentosarjojen suorittaminen. Suoritan shell-komentosarjan.

Tämä antaa sinulle tekstiruudun, johon voit lisätä haluamasi komennot. Voit käyttää komentosarjoja suorittamaan erilaisia ​​tehtäviä, kuten palvelimen ylläpito, versionhallinta, järjestelmän asetusten lukeminen jne. Käytän tätä osaa yksinkertaisen komentosarjan suorittamiseen.

Vaihe 4: Tallenna projekti ja sinut viedään projektin yleissivulle. Täältä näet tietoa projektista, mukaan lukien sen rakennettu historia.

Vaihe 5: Klikkaus Rakenna nyt vasemmalla puolella aloittaaksesi rakentamisen.

Vaihe 6: Jos haluat nähdä lisätietoja, napsauta kyseistä koontiversiota rakennushistoria-alueella, minkä jälkeen sinut siirretään sivulle, jossa on yleiskatsaus koontitiedoista.

Vaihe 7: Konsolin ulostulo Tämän sivun linkki on erityisen hyödyllinen tutkittaessa työn tuloksia yksityiskohtaisesti.

Vaihe 8: Jos palaat Jenkinsin kotiin, näet yleiskatsauksen kaikista projekteista ja niiden tiedoista, mukaan lukien tila.

Rakennuksen tila ilmaistaan ​​kahdella tavalla: sääkuvake ja värillinen pallo. Sääkuvake on erityisen hyödyllinen, koska se näyttää tietueen useista koontiversioista yhdessä kuvassa.

Kuten yllä olevasta kuvasta näet, aurinko edustaa sitä, että kaikki rakennukseni onnistuivat. Pallon väri antaa meille tietyn rakennuksen tilan, yllä olevassa kuvassa pallon väri on sininen, mikä tarkoittaa, että kyseinen rakennus onnistui.

Tässä Jenkins-opetusohjelmassa olen juuri antanut esittelyesimerkin. Seuraavassa blogissani näytän sinulle, kuinka voit hankkia ja rakentaa koodia GitHub-arkistosta Jenkinsin avulla.

Jos löysit tämän Jenkins-opetusohjelma oleellista, tutustu Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Edureka DevOps -sertifiointikoulutus auttaa oppijoita saamaan asiantuntemusta erilaisista DevOps-prosesseista ja työkaluista, kuten Puppet, Jenkins, Nagios ja GIT SDLC: n useiden vaiheiden automatisoimiseksi.

Onko sinulla kysymys meille? Mainitse se kommenttiosassa ja palaamme sinuun.