Kas yra virėjas? - Įrankis, naudojamas konfigūracijos valdymui



Šis „What is Chef“ tinklaraštis yra pirmasis „Chef“ tinklaraščių serijos tinklaraštis. Jame kalbama apie konfigūracijos valdymą ir tai, kaip virėjas to pasiekia naudodamas naudojimo atvejį.

„Chef“ yra įrankis, naudojamas konfigūracijos valdymui ir su kuriuo glaudžiai konkuruoja Lėlė . Šiame tinklaraštyje paaiškinsiu, kas yra virėjas, konfigūracijos valdymas ir kaip virėjas pasiekia konfigūracijos valdymą naudodamas atvejį.

Kas yra virėjas?

„Chef“ yra automatizavimo įrankis, suteikiantis galimybę apibrėžti infrastruktūrą kaip kodą. Infrastruktūra kaip kodas (IAC) reiškia tiesiog infrastruktūros valdymą rašant kodą (automatizuojant infrastruktūrą), o ne naudojant rankinius procesus. Tai taip pat gali būti vadinama programuojama infrastruktūra. Virėjas naudoja grynos rubino, domenui specifinę kalbą (DSL), rašydamas sistemos konfigūracijas. Toliau pateikiami virėjo automatizavimo tipai, neatsižvelgiant į infrastruktūros dydį:





  • Infrastruktūros konfigūracija
  • Programos diegimas
  • Konfigūracijos tvarkomos visame jūsų tinkle

Kaip Lėlė kuris turi pagrindinio-vergo architektūrą, net virėjas turi kliento-serverio architektūrą. Tačiau virėjas turi papildomą komponentą, vadinamą „Workstation“. Apie darbo vietą kalbėsiu kitame savo tinklaraštyje. Peržiūrėkite toliau pateiktą diagramą:

Virėjas prieš lėlę - kas yra virėjas - Edureka



„Chef“ programoje mazgai dinamiškai atnaujinami pagal serverio konfigūracijas. Tai vadinama Traukite konfigūraciją o tai reiškia, kad mums nereikia vykdyti nė vienos komandos „Chef“ serveryje, norėdami perkelti konfigūraciją ant mazgų, mazgai automatiškai atnaujins save serveryje esančiomis konfigūracijomis. Kitas mano tinklaraštis Virėjo pamoka išsamiai paaiškins virėjo architektūrą kartu su visais virėjo komponentais.

Dabar pažvelkime į virėjo populiarumo priežastis.

Kas yra virėjas - pagrindinė virėjo metrika

  • Virėjas palaiko kelias platformas, tokias kaip AIX, RHEL / CentOS, FreeBSD, OS X, Solaris, Microsoft Windows ir Ubuntu. Papildomos klientų platformos yra „Arch Linux“, „Debian“ ir „Fedora“.
  • Virėjas gali būti integruotas su debesimis pagrįstomis platformomis, tokiomis kaip „Internap“, „Amazon EC2“, „Google Cloud Platform“, „OpenStack“, „SoftLayer“, „Microsoft Azure“ ir „Rackspace“, kad automatiškai suteiktų ir sukonfigūruotų naujas mašinas.
  • Virėjas turi aktyvią, protingą ir greitai augančią bendruomenės paramą.
  • Dėl šefo brandumo ir lankstumo jį naudoja milžinai, tokie kaip „Mozilla“, „Expedia“, „Facebook“, „HP Public Cloud“, „Prezi“, „Xero“, „Ancestry.com“, „Rackspace“, „Pasitenkinkite“, IGN, Maršalo universitetas, „Socrata“, Minesotos universitetas, „Wharton“ mokykla iš Pensilvanijos universiteto „Bonobos“, „Splunk“, „Citi“, „DueDil“, „Disney“ ir „Cheezburger“.

Pasak „Facebook“ gamybos inžinieriaus Philo Dibowitzo



„Yra trys mastelio aspektai, į kuriuos paprastai žiūrime pagal infrastruktūrą - serverių skaičius, skirtingų konfigūracijų kiekis tose sistemose ir žmonių, reikalingų šioms konfigūracijoms palaikyti, skaičius. Virėjas pateikė pakankamai lanksčią automatikos sprendimą, kad galėtų prisitaikyti prie mūsų skalės dinamikos, nereikalaudamas pakeisti darbo eigos “.

Be abejo, virėjas yra vienas iš garsiausių konfigūracijos valdymo įrankių ir su juo glaudžiai konkuruoja Lėlė . Tačiau prieš gilinantis į „Kas yra virėjas“, teisinga pirmiausia paaiškinti, kas yra konfigūracijos valdymas ir kodėl tai svarbu.

Konfigūracijos valdymas

Nesijaudinkite, šiame tinklaraštyje nebus jokio sunkaus konfigūracijos valdymo apibrėžimo :)

Leiskite mums taip suprasti konfigūracijos valdymą - tarkime, kad turite įdiegti programinę įrangą ant šimtų sistemų. Ši programinė įranga gali būti operacinė sistema arba kodas arba esamos programinės įrangos atnaujinimas. Galite atlikti šią užduotį rankiniu būdu, bet kas nutiks, jei šią užduotį turėsite atlikti per naktį, nes rytoj gali būti Didžiojo milijardo diena pardavimas įmonėje ar kai kur M arba Išpardavimas ir kt., kur numatomas intensyvus eismas. Net jei jums pavyko tai padaryti rankiniu būdu, didelę dieną gali kilti daug klaidų. Ką daryti, jei programinė įranga, kurią atnaujinote šimtuose sistemų, neveikia, tada kaip grįšite į ankstesnę stabilią versiją, ar galėsite šią užduotį atlikti rankiniu būdu? AF-kursas ne!

Norėdami išspręsti šią problemą, buvo pristatytas konfigūracijos valdymas. Naudodami konfigūracijos valdymo įrankius, tokius kaip virėjas, lėlė ir kt., Galite automatizuoti šią užduotį. Viskas, ką jums reikia padaryti, tai nurodyti konfigūracijas viename centralizuotame serveryje ir atitinkamai bus sukonfigūruoti visi mazgai. Tai leidžia prieiti prie tikslaus istorinio sistemos būsenos įrašo projekto valdymo ir audito tikslais. Taigi iš esmės turime vieną kartą nurodyti konfigūracijas centriniame serveryje ir pakartoti jas tūkstančiuose mazgų. Konfigūracijos valdymas padeda labai struktūruotai ir lengvai atlikti toliau nurodytas užduotis:

  • Išsiaiškinti, kuriuos komponentus keisti, kai keičiasi reikalavimai.
  • Dar kartą įgyvendinama, nes reikalavimai pasikeitė nuo paskutinio diegimo.
  • Grįžtama prie ankstesnės komponento versijos, jei pakeitėte naują, bet su trūkumais.
  • Neteisingo komponento pakeitimas, nes negalėjote tiksliai nustatyti, kuris komponentas turėjo būti pakeistas.

Jei norite sužinoti, kaip NYSE sutaupė milijonus dolerių, naudodama konfigūracijos valdymą, žiūrėkite mano dienoraštį „Lėlių“

Apskritai yra du konfigūracijų valdymo būdai, būtent „Push and Pull“ konfigūracijos.

  • Traukimo konfigūracija: Šio tipo konfigūracijos valdyme mazgai periodiškai apklausia centralizuotą serverį, kad būtų galima atnaujinti. Šie mazgai yra dinamiškai sukonfigūruoti, todėl iš esmės jie traukia konfigūracijas iš centralizuoto serverio. „Pull“ konfigūraciją naudoja tokie įrankiai kaip virėjas, lėlė ir kt.
  • Push konfigūracija: Šio tipo konfigūracijų valdyme centralizuotas serveris konfigūracijas perkelia į mazgus. Skirtingai nei „Pull Configuration“, tam tikros komandos turi būti vykdomos centralizuotame serveryje, kad sukonfigūruotų mazgus. „Push Configuration“ naudoja tokie įrankiai kaip „Ansible“.

Sužinokite apie įvairius konfigūracijos valdymo komponentus mano lėlių mokymo tinklaraštyje

Dabar yra tinkamas laikas, kai vedu jus į priekį, norėdamas suprasti „Kas yra virėjas“, paaiškindamas, kaip virėjas pasiekia konfigūracijos valdymą.

ką visi gali nagios stebėti

Kas yra virėjas - konfigūracijos valdymas su virėju

Mes supratome, kas yra virėjas. Dabar aš jums paaiškinsiu, kaip virėjas naudodamasis pasiekia konfigūracijos valdymą. „Gannett“ yra viešai prekiaujama Amerikos žiniasklaidos holdingo bendrovė. Tai didžiausia JAV laikraščių leidėja, matuojama pagal bendrą dienos tiražą.

Gannetto tradicinei diegimo darbo eigai buvo būdingi keli perdavimai ir rankiniai bandymai. Pažiūrėkime, su kokiomis problemomis jie susidūrė šiame procese:

  • Buvo sunku išlaikyti tikslius, pakartojamus kūrinius.
  • Buvo daug sukūrimo gedimų, o bandymai dažnai vyko netinkamoje aplinkoje.
  • Diegimo ir atidėjimo laikas gali svyruoti nuo kelių dienų iki kelių savaičių.
  • Operacijų komanda neturėjo prieigos prie debesies ar kūrimo aplinkos.
  • Kiekviena grupė naudojo savo įrankių rinkinį ir nebuvo atskaitingos finansams ar saugumui. Niekas nežinojo, kiek iš tikrųjų kainuoja programa. Saugumas niekaip negalėjo patikrinti programinės įrangos paketų.

Gannettas buvo pasirengęs pokyčiams. Kūrėjai norėjo greitai įdiegti savo programas. Operacijos norėjo stabilios infrastruktūros, kurioje jie galėtų kurti ir dislokuoti pakartotinai. Finansai norėjo sužinoti tikrąją programos kainą. Saugumas norėjo peržiūrėti ir tikrinti visus kaupinius ir sugebėti stebėti pokyčius.

Gannettas matė, kad debesis kaip paslauga siūlo daug privalumų. Kūrėjai turėjo prieigą prie standartizuotų išteklių. Dėl debesų skaičiavimo pagal pareikalavimą modelio buvo lengviau valdyti ramų eismą, o perdavimas buvo kuo mažesnis.

Virėjas leidžia jums dinamiškai aprūpinti ir išjungti infrastruktūrą pagal pareikalavimą, kad neatsiliktų nuo naudojimo ir srauto piko. Tai leidžia dažniau diegti ir atnaujinti naujas paslaugas ir funkcijas, be mažos prastovos rizikos. Naudodamiesi „Chef“ galite pasinaudoti visais debesies siūlomais lankstumo ir taupymo būdais.

Pažiūrėkime, kokias funkcijas atliko virėjas „Gannett“:

  • Gannettas pradėjo kurti VPC („Virtual Private Cloud“), skirtą kūrimo aplinkai, kuri imituotų gamybą. Nė viena iš jų jau naudojamų priemonių nebuvo tinkama. Bet jie nustatė, kad virėjas gerai dirbo su debesimis ir „Linux“ bei „Windows“ aplinka. Jie panaudojo „Chef“ kūrimo aplinką, kuri puikiai atitiktų gamybos aplinką.
  • Kad programa galėtų patekti į VPC, ją reikėjo parengti ir įdiegti kartu su virėju.
  • Saugumas būtų įtrauktas anksti ir valdytų privalomas prieigos prie virėjo ir sistemos saugumo standartų kontrolę.

Dabar pats laikas suprasti, kokie buvo šio proceso rezultatai:

  • Gannetto dislokavimas tapo greitesnis ir patikimesnis. Programos parengimas ir diegimas, kuris kartą užtruko kelias savaites, panaudojus virėją, užtruko kelias minutes.
  • Visos naujos programos buvo įdiegtos debesyje su virėju. Šios programos buvo diegiamos visose aplinkose taip pat, kaip ir diegiamos gamyboje. Be to, bandymai vyko kiekvienoje aplinkoje, kad diegimas būtų patikimas.
  • Visa infrastruktūra buvo traktuojama kaip kodas, o tai žymiai padidina bet kokių įvykusių pokyčių matomumą. Tai buvo naudinga plėtrai, operacijoms, saugumui ir finansams.

Po „ Kas yra virėjas “Kitas mano tinklaraštis t.y. Virėjo pamoka daugiausia dėmesio skiriama virėjo architektūrai ir jos komponentams. Aš taip pat paaiškinau, kaip įdiegti „Apache2“ naudojant „Chef“.

Jei radote šį tinklaraštį „ Kas yra virėjas ' Aktualus, patikrinkite sukūrė „Edureka“ - patikima internetinė mokymosi įmonė, turinti daugiau nei 250 000 patenkintų besimokančiųjų tinklą. „Edureka DevOps“ sertifikavimo mokymo kursas padeda besimokantiesiems įgyti įvairių „DevOps“ procesų ir įrankių, tokių kaip „Lėlė“, „Jenkins“, „Nagios“ ir „GIT“, kelių automatizuotų SDLC žingsnių, patirties.