Lutkovna vadnica - rešitev na enem mestu za upravljanje konfiguracije



Lutkovna vadnica je drugi blog serije lutkovnih blogov. Govori o lutkovni arhitekturi, komponentah in primeru namestitve mysql & php z uporabo lutke.

Lutkovna vadnica

Lutkovna vadnica je drugi blog serije lutkovnih blogov. Upam, da ste prebrali moj prejšnji blog na temo “ Kaj je lutka ”, Ki pojasnjuje upravljanje konfiguracije in zakaj je to pomembno s pomočjo primerov uporabe.

V tej vaji za lutke bodo zajete naslednje teme:





Kaj je upravljanje konfiguracije?

V mojem prejšnji spletni dnevnik , Predstavil sem upravljanje konfiguracije in izzive, ki nam jih pomaga premagati. V tej vaji za lutke vam bom razložil različne soodvisne dejavnosti upravljanja konfiguracije.Pred tem pa razumimo, kaj je Konfiguracijski element (CI). Konfiguracijski element je katera koli komponenta storitve, element infrastrukture ali drug element, ki ga je treba upravljati, da se zagotovi uspešno izvajanje storitev. Primeri CI vključujejo dokumente o posameznih zahtevah, programsko opremo, modele in načrte.



Upravljanje konfiguracije je sestavljeno iz naslednjih elementov:

  • Identifikacija konfiguracije
  • Upravljanje sprememb
  • Računovodstvo stanja konfiguracije
  • Revizije konfiguracije

Spodnji diagram razlaga te komponente:

Komponente za upravljanje konfiguracije - Lutkovna vadnica - Edureka



Identifikacija konfiguracije: Gre za postopek:

  • Označevanje postavk programske in strojne opreme z edinstvenimi identifikatorji
  • Identifikacija dokumentacije, ki opisuje konfiguracijski element
  • Združevanje povezanih postavk konfiguracije v izhodišča
  • Revizije označevanja postavk konfiguracije in temeljnih črt.

Upravljanje sprememb: Gre za sistematičen pristop k spopadanju s spremembami tako z vidika organizacije kot posameznika.

Računovodstvo stanja konfiguracije: To vključuje postopek snemanja in poročanja opisov elementov konfiguracije (npr. strojne opreme, programske opreme, vdelane programske opreme itd.) in vseh odstopanj od izhodišča med načrtovanjem in izdelavo. V primeru suma na težave je mogoče hitro določiti preverjanje izhodiščne konfiguracije in odobrene spremembe.

Revizije konfiguracije: Revizije konfiguracije zagotavljajo mehanizem za določanje stopnje skladnosti trenutnega stanja sistema z najnovejšimi izhodišči in dokumentacijo. V bistvu gre za formalni pregled, da se preveri, ali bo izdelek, ki ga dostavljamo, deloval kot oglaševan, promoviran ali kakor koli obljubljen strankam. Informacije, ki so na voljo kot rezultat revizij kakovosti in testiranja, skupaj z računovodskimi informacijami o stanju konfiguracije, zagotavlja zagotovilo, da je bilo zgrajeno, kar je bilo zahtevano.

Razumejmo upravljanje konfiguracije s primerom uporabe. Recimo, če morate posodobiti določeno programsko opremo ali jo želite zamenjati, v tem primeru je treba za uspešno upravljanje konfiguracije slediti spodnjemu diagramu poteka:

Zdaj je pravi čas za razumevanje lutkovne arhitekture.

Lutkovna vadnica - Arhitektura Lutka

Lutka uporablja arhitekturo Master-Slave. Spodnji diagram prikazuje enako:

Na zgornji sliki se izvajajo naslednje funkcije:

  • Lutkovni agent pošlje Dejstva lutkovnemu mojstru. Dejstva so v bistvupodatkovni par ključ / vrednost, ki predstavlja nek vidik podrejenega stanja, kot je njegov naslov IP, čas delovanja, operacijski sistem ali pa navidezni stroj. Dejstva bom podrobneje razložil kasneje v blogu.
  • Lutkovni mojster z dejstvi sestavi katalog, ki določa, kako naj bo konfiguriran suženj. Katalogje dokument, ki opisuje želeno stanje za vsak vir, ki ga Lutkovni mojster upravlja na podrejeni enoti. Kataloge in vire bom podrobneje razložil kasneje.
  • Puppet Slave poroča Masterju, da je Konfiguracija končana, kar je vidno na nadzorni plošči Lutka.

Oglejte si ta vadbeni video o lutkah za globlje razumevanje lutke.

Lutkovna vadnica za začetnike | Izobraževanje za DevOps | Edureka

Lutkovna vadnica - Komunikacija lutkovnega mojstra in sužnja

Lutkovni mojster in suženj komunicirata skozivaren šifriran kanal s pomočjo SSL. Spodnji diagram prikazuje enako:

Kot lahko vidite iz zgornje slike:

  • Lutkovni suženj zahteva potrdilo o lutkovnem mojstru.
  • Po prejemu potrdila Puppet Master, Master zahteva potrdilo Slave.
  • Ko je Master podpisal podrejeno potrdilo, podrejeni zahteva konfiguracijo / podatke.
  • Končno bo Puppet Master poslal konfiguracijo Puppet Slave.

Oglejmo si zdaj različne lutkovne komponente.

Lutkovna vadnica - komponente Lutka

Manifesti: Vsak suženj ima svoje podrobnosti o konfiguraciji v Puppet Master, napisane v maternem lutkovnem jeziku. Te podrobnosti so napisane v jeziku, ki ga Lutka lahko razume, in jih imenujemo Manifesti. Sestavljeni so iz lutkovne kode in njihova imena datotek uporabljajo .pp podaljšanje. V bistvu gre za lutkovne programe.
Na primer: v Puppet Master lahko napišete manifest, ki ustvari datoteko in namesti strežnik Apache na vse lutkovne sužnje, povezane z lutkovnim mojstrom.

Modul: Lutkovni modul je zbirka manifestov in podatkov (kot so dejstva, datoteke in predloge) in imajo posebno strukturo imenikov. Moduli so uporabni za organizacijo vaše lutkovne kode, saj vam omogočajo, da svojo kodo razdelite na več manifestov. Moduli so samostojni svežnji kode in podatkov.

Vir: Viri so temeljna enota za modeliranje sistemskih konfiguracij. Vsak vir opisuje neki vidik sistema, na primer določeno storitev ali paket.

Faktor: Facter zbira osnovne informacije (dejstva) o Puppet Slave, kot so podrobnosti o strojni opremi, omrežne nastavitve, vrsta in različica OS, naslovi IP, naslovi MAC, SSH ključi in še več. Ta dejstva so nato na voljo v Manifestih lutkovnih mojstrov kot spremenljivke.

Mcollective: To je okvir, ki omogoča vzporedno izvajanje več opravil na več podrejenih napravah. Izvaja različne funkcije, kot so:

  • Komunicirajte z grozdi sužnjev, ne glede na to, ali gre za majhne skupine ali zelo velike razmestitve.
  • Za distribucijo zahtev uporabite paradigmo oddajanja. Vsi podrejeni prejemajo vse zahteve hkrati, zahteve imajo priložene filtre in samo podrejeni, ki se ujemajo s filtrom, bodo delovali na zahtevah.
  • Za klic oddaljenih suženj uporabite preprosta orodja ukazne vrstice.
  • Napišite prilagojena poročila o svoji infrastrukturi.

Katalogi: Katalog opisuje želeno stanje vsakega upravljanega vira na podrejeni enoti. Gre za zbirko vseh virov, ki jih lutkovni mojster uporablja za danega sužnja, pa tudi odnosov med temi viri.Kataloge sestavlja lutkovni mojster iz manifestov in podrejenih podatkov (kot so dejstva, potrdila in okolje, če je na voljo), pa tudi neobvezne zunanje podatke (na primer podatke iz zunanjega klasifikatorja suženj, izvožene vire, in funkcije). Potem poveljnik na sestavljeni katalog podrejeni pošlje suženj na njegovo zahtevo.

Zdaj se bom v tem vadniku za lutke osredotočil na praktično uporabo.

Lutkovna vadnica - Hands-On

Pokazal vam bom, kako namestiti MySQL in PHP iz Puppet Master v Puppet Slave. Za predstavitvene namene uporabljam samo enega sužnja, na en mojster je lahko na stotine sužnjev. Za uvajanje PHP in MySQL bom uporabil vnaprej določene module, ki so na voljo na spletnem mestu forge.puppet.com. Ustvarite lahko tudi svoje module.

Korak 1: V Puppet Master namestite MySQL in PHP modula.

Izvedite to:

1) lutkovni modul namesti puppetlabs-mysql –verzija 3.10.0

Ta modul MySQL namesti, konfigurira in upravlja storitev MySQL. Ta modul upravlja tako z namestitvijo in konfiguracijo MySQL kot tudi z razširitvijo lutke, ki omogoča upravljanje virov MySQL, kot so baze podatkov, uporabniki in dotacije.

2) namestitev lutkovnega modula mayflower-php –verzija 4.0.0-beta1

Ta modul se uporablja za upravljanje PHP, zlasti php-fpm. PHP-FPM (FastCGI Process Manager) je nadomestna izvedba PHP FastCGI z nekaterimi dodatnimi funkcijami, uporabnimi za spletna mesta katere koli velikosti, zlasti bolj zasedena.

2. korak: V Lutkovni manifest spadata strežnik MySQL in PHP.

Izvedite to: vi /etc/puppet/manifests/site.pp

Uporabite lahko kateri koli drug urejevalnik, kot je vim, gedit itd. V to datoteko site.pp dodajte naslednje:

vključi ':: mysql :: server' vključi ':: php'

Shrani in prenehaj.

3. korak: Lutkovni sužnji periodično (po vsakih 30 minutah) potegnejo svojo konfiguracijo iz Mojstra. Ocenil bo glavni manifest in uporabil modul, ki določa nastavitve MySQL in PHP. Če ga želite takoj preizkusiti, morate na vsakem vozlišču Slave zagnati naslednji ukaz:

Izvedite to: lutkovni agent -t

Tako sta MySQL in PHP uspešno nameščena na vozlišču Slave.

4. korak: Če želite preveriti nameščeno različico MySQL in PHP:

upravljanje javnih naročil pri vodenju projektov

Izvedite to:

1) mysql -v

2) php-različica

Čestitamo! MySQl in PHP delujeta v vašem Lutkovnem sužnju. Tu sem vam pokazal samo enega sužnja, vendar si predstavljajte, če je sužnjev na stotine. V tem primeru vaše delo postane tako enostavno, samo določite konfiguracije v Puppet Master in Puppet Slaves bodo samodejno ocenili glavni manifest in uporabili modul, ki določa nastavitve MySQL in PHP.

Če ste našli to Lutkovna vadnica ustrezno, preverite Edureka, zaupanja vredno podjetje za spletno učenje z mrežo več kot 250.000 zadovoljnih učencev, razširjenih po vsem svetu. Tečaj Edureka DevOps Certification Training pomaga učencem pridobiti znanje o različnih procesih DevOps in orodjih, kot so Lutka, Jenkins, Nagios in GIT za avtomatizacijo več korakov v SDLC.