Puppet Tutorial - Yhden luukun ratkaisu kokoonpanon hallintaan



Puppet Tutorial on Nukke-blogisarjan toinen blogi. Siinä puhutaan Puppet-arkkitehtuurista, komponenteista ja esimerkistä mysql & php: n käyttöönotosta Puppetin avulla.

Nukkeopetus

Puppet Tutorial on Nukke-blogisarjan toinen blogi. Toivon, että olet lukenut edellisen blogini Mikä on nukke ”, Joka selittää kokoonpanon hallinnan ja miksi se on tärkeää käyttötapausten avulla.

istunnonhallinta java-verkkosovelluksessa

Tässä nukketutkaohjelmassa käsitellään seuraavia aiheita:





Mikä on kokoonpanon hallinta?

Minussa edellinen blogi , Olen antanut johdannon kokoonpanonhallintaan ja mitä haasteita se auttaa meitä voittamaan. Tässä nukketeatterikurssissa selitän sinulle määritysten hallinnan eri keskinäisiä toimintoja.Mutta ennen sitä ymmärretään mikä on Määrityskohde (CI). Konfigurointikohde on mikä tahansa palvelukomponentti, infrastruktuuri-elementti tai muu kohde, jota on hallittava palvelujen onnistuneen toimittamisen varmistamiseksi. Esimerkkejä CI: stä ovat yksittäiset vaatimuksia koskevat asiakirjat, ohjelmistot, mallit ja suunnitelmat.



Kokoonpanon hallinta koostuu seuraavista elementeistä:

  • Kokoonpanon tunnistaminen
  • Muutoksen hallinta
  • Kokoonpanon tilan kirjanpito
  • Kokoonpanotarkastukset

Alla oleva kaavio selittää nämä komponentit:

Kokoonpanonhallinnan komponentit - Nukkeopetus - Edureka



Kokoonpanon tunniste: Se on prosessi:

  • Ohjelmistojen ja laitteistokokoonpanojen yksilöinti yksilöllisillä tunnisteilla
  • Konfigurointikohtaa kuvaavan dokumentaation tunnistaminen
  • Ryhmittele siihen liittyvät määrityskohteet perusviivoihin
  • Määrityskohteiden ja perusviivojen tarkistusten merkitseminen.

Muutoksen hallinta: Se on järjestelmällinen lähestymistapa muutoksen käsittelemiseen sekä organisaation että yksilön näkökulmasta.

Kokoonpanon tilan kirjanpito: Se Sisältää kokoonpanokohteiden kuvausten (esim. laitteisto, ohjelmisto, laiteohjelmisto jne.) tallennus- ja raportointiprosessin sekä kaikki poikkeamat lähtötasosta suunnittelun ja tuotannon aikana. Jos epäillään ongelmia, perusasetusten ja hyväksyttyjen muutosten todentaminen voidaan määrittää nopeasti.

Kokoonpanotarkastukset: Kokoonpanotarkastukset tarjoavat mekanismin sen määrittämiseksi, missä määrin järjestelmän nykyinen tila on yhdenmukainen viimeisimmän perustason ja dokumentaation kanssa. Pohjimmiltaan se on muodollinen tarkastus sen varmistamiseksi, että toimitettava tuote toimii mainostettuna, mainostettuna tai muulla tavoin asiakkaille luvatulla tavalla. Se käyttää käytettävissä olevia tietoja laadunvalvonnan ja testauksen tuloksena yhdessä kokoonpanon tilan kirjanpitotietojen kanssa varmistaakseen, että vaadittu on rakennettu.

Ymmärretään kokoonpanon hallintaa käyttötapauksella. Oletetaan, että jos joudut päivittämään tietyn ohjelmiston tai haluat korvata sen, siinä tapauksessa alla olevaa vuokaaviota tulisi noudattaa onnistuneelle kokoonpanonhallinnalle:

Nyt on oikea aika ymmärtää nukketeatteriarkkitehtuuria.

Puppet Tutorial - Arkkitehtuuri Nukke

Nukke käyttää Master-Slave-arkkitehtuuria. Alla oleva kaavio kuvaa samaa:

Seuraavat toiminnot suoritetaan yllä olevassa kuvassa:

  • Nukkeagentti lähettää tosiasiat nukenmestarille. Tosiasiat ovat pohjimmiltaanavain / arvo-tietopari, joka edustaa Slave-tilaa, kuten sen IP-osoitetta, käyttöaikaa, käyttöjärjestelmää tai onko kyseessä virtuaalikone. Selitän tosiasiat yksityiskohtaisesti myöhemmin blogissa.
  • Puppet Master laatii tosiseikkojen avulla luettelon, joka määrittelee, kuinka orja tulisi määrittää. Luetteloon asiakirja, joka kuvaa halutun tilan jokaiselle resurssille, jota Puppet Master hallitsee orjalla. Selitän luettelot ja resurssit yksityiskohtaisesti myöhemmin.
  • Nukke-orja raportoi takaisin päällikölle ilmoittamalla, että määritys on valmis, mikä näkyy nukketeatterin hallintapaneelissa.

Katso tämä Nukke-opetusvideo, jolla ymmärrät nukke syvällisesti.

Nukkeopetus aloittelijoille | DevOps-koulutus | Edureka

Nukkeopetus - nukketeatterimestari ja orjaviestintä

Nukemestari ja orja kommunikoivat kauttasuojattu salattu kanava SSL: n avulla. Alla oleva kaavio kuvaa samaa:

Kuten yllä olevasta kuvasta näet:

  • Puppet Slave pyytää Puppet Master -sertifikaattia.
  • Saatuaan Puppet Master -sertifikaatin Master pyytää Slave-sertifikaattia.
  • Kun isäntä on allekirjoittanut Slave-varmenteen, Slave pyytää kokoonpanoa / tietoja.
  • Lopuksi Puppet Master lähettää kokoonpanon Puppet Slavelle.

Katsotaanpa nyt nyt useita nukketukikomponentteja.

Puppet Tutorial - komponentit Nukke

Manifestit: Jokaisella orjalla on määritystiedot Puppet Master -sovelluksessa, joka on kirjoitettu äidinkielen äidinkielellä. Nämä yksityiskohdat on kirjoitettu kielellä, jota nukke ymmärtää, ja niitä kutsutaan manifesteiksi. Ne koostuvat nukketunnuksesta ja niiden tiedostonimet käyttävät .pp laajennus. Nämä ovat pohjimmiltaan nukkeohjelmia.
Esimerkiksi: Voit kirjoittaa manifestin Puppet Master -sovellukseen, joka luo tiedoston ja asentaa Apache-palvelimen kaikkiin Puppet Master -laitteeseen liitettyihin Puppet Slave -sovelluksiin.

Moduuli: Nukumoduuli on kokoelma manifestejä ja tietoja (kuten faktoja, tiedostoja ja malleja), ja niillä on erityinen hakemistorakenne. Moduulit ovat hyödyllisiä nukketunnuksesi järjestämisessä, koska niiden avulla voit jakaa koodisi useaan manifestiin. Moduulit ovat itsenäisiä koodi- ja tietopaketteja.

Resurssi: Resurssit ovat perusyksikkö järjestelmäkokoonpanojen mallinnuksessa. Kukin resurssi kuvaa jonkin järjestelmän osan, kuten tietyn palvelun tai paketin.

Merkki: Facter kerää perustiedot (tosiasiat) Puppet Slavesta, kuten laitteistotiedot, verkkoasetukset, käyttöjärjestelmän tyyppi ja versio, IP-osoitteet, MAC-osoitteet, SSH-avaimet ja paljon muuta. Nämä tosiasiat asetetaan sitten saataville Puppet Master's Manifests -muuttujina.

Mcollective: Se on kehys, jonka avulla useita töitä voidaan suorittaa samanaikaisesti useilla orjilla. Se suorittaa erilaisia ​​toimintoja, kuten:

  • Ole vuorovaikutuksessa orjaklustereiden kanssa, joko pienissä ryhmissä tai erittäin suurissa ryhmissä.
  • Käytä lähetysparadigmaa pyyntöjen jakamiseen. Kaikki orjat vastaanottavat kaikki pyynnöt samanaikaisesti, pyynnöihin on liitetty suodattimet, ja vain suodatinta vastaavat orjat toimivat pyynnöissä.
  • Käytä yksinkertaisia ​​komentorivityökaluja soittaaksesi etäslaveihin.
  • Kirjoita mukautettuja raportteja infrastruktuuristasi.

Luettelot: Luettelo kuvailee kunkin orjan hallitun resurssin halutun tilan. Se on kokoelma kaikista resursseista, joita Nukemestari käyttää tiettyyn orjaan, samoin kuin näiden resurssien välisistä suhteista.Luettelot on koonnut nukketeatterijärjestelmä Manifesteistä ja orjien toimittamista tiedoista (kuten tosiasiat, varmenteet ja ympäristö, jos sellainen on) sekä valinnaiset ulkoiset tiedot (kuten ulkoisen Slave-luokittelijan tiedot, viedyt resurssit, ja toiminnot). Mestari palvelee sitten koottua luetteloa orjalle pyydettäessä.

Nyt tässä nukketutkimusohjelmassa seuraava jaksoni keskittyy käytännön toimintaan.

Nukkeopetus - Hands-On

Näytän sinulle, kuinka MySQL ja PHP otetaan käyttöön Puppet Masterista Puppet Slaveen. Käytän vain yhtä orjaa esittelytarkoituksessa, yhteen isäntään voi olla kytketty satoja orjia. PHP: n ja MySQL: n käyttöönottoon käytän ennalta määritettyjä moduuleja, jotka ovat saatavilla osoitteessa forge.puppet.com. Voit myös luoda omia moduuleja.

Vaihe 1: Asenna Puppet Master -sovellukseen MySQL- ja PHP-moduulit.

Suorita tämä:

1) nukketoimintomoduuli asentaa puppetlabs-mysql –versio 3.10.0

Tämä MySQL-moduuli asentaa, konfiguroi ja hallinnoi MySQL-palvelua. Tämä moduuli hallitsee sekä MySQL: n asennusta ja määrityksiä että Puppetin laajentamista MySQL-resurssien, kuten tietokantojen, käyttäjien ja apurahojen, hallinnan mahdollistamiseksi.

2) nuken moduuli asentaa mayflower-php –versio 4.0.0-beeta1

Tätä moduulia käytetään PHP: n, erityisesti php-fpm: n hallintaan. PHP-FPM (FastCGI Process Manager) on vaihtoehtoinen PHP FastCGI -toteutus, jossa on joitain lisäominaisuuksia, jotka ovat hyödyllisiä kaiken kokoisille sivustoille, erityisesti kiireisemmille sivustoille.

Vaihe 2: Puppet Manifests sisältää MySQL-palvelimen ja PHP: n.

Suorita tämä: vi /etc/puppet/manifests/site.pp

Voit käyttää mitä tahansa muuta editoria, kuten vim, gedit jne. Lisää tähän site.pp-tiedostoon seuraava:

sisällytä ':: mysql :: palvelin' sisällytä ':: php'

Tallenna ja lopeta.

Vaihe 3: Nukke-orjat vetävät kokoonpanonsa Masterista säännöllisesti (30 minuutin välein). Se arvioi pääluettelon ja käyttää moduulia, joka määrittelee MySQL- ja PHP-asetukset. Jos haluat kokeilla sitä heti, sinun on suoritettava seuraava komento jokaisessa Slave-solmussa:

Suorita tämä: nukketagentti -t

Joten MySQL ja PHP asennetaan onnistuneesti Slave-solmuun.

Vaihe 4: Asennetun MySQL- ja PHP-version tarkistaminen:

Suorita tämä:

1) mysql -v

pakettien käyttö java

2) php-versio

Onnittelut! MySQl ja PHP ovat käynnissä Puppet Slavessa. Tässä olen osoittanut sinulle vain yhden orjan, mutta kuvittele, onko orjia satoja. Siinä tilanteessa työsi tulee niin helpoksi, Määritä vain kokoonpanot Puppet Masterissa ja Puppet Slaves arvioi automaattisesti pääluettelon ja käyttää moduulia, joka määrittelee MySQL- ja PHP-asetukset.

Jos löysit tämän Nukkeopetus asiaankuuluva, 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.