Výukový program pro loutky - komplexní řešení pro správu konfigurace

Puppet Tutorial je druhý blog z řady blogů Puppet. Hovoří o architektuře loutek, komponentách a příkladu nasazení mysql & php pomocí Puppet.

Výukový program pro loutky

Puppet Tutorial je druhý blog z řady blogů Puppet. Doufám, že jste si přečetli můj předchozí blog na téma „ Co je Loutka ”To vysvětluje Configuration Management a proč je to důležité pomocí případů použití.

V tomto výukovém programu pro loutky se budeme zabývat následujícími tématy:





Co je Správa konfigurace?

V mém předchozí blog , Uvedl jsem úvod do Configuration Management a jaké výzvy nám pomáhá překonat. V tomto loutkovém tutoriálu vám vysvětlím různé vzájemně závislé činnosti Configuration Management.Ale předtím pochopme, co to je Položka konfigurace (CI). Konfigurační položka je jakákoli součást služby, prvek infrastruktury nebo jiná položka, kterou je třeba spravovat, aby bylo zajištěno úspěšné dodání služeb. Mezi příklady CI patří dokumenty o individuálních požadavcích, software, modely a plány.



Správa konfigurace se skládá z následujících prvků:

  • Identifikace konfigurace
  • Správa změn
  • Účtování stavu konfigurace
  • Audity konfigurace

Níže uvedený diagram vysvětluje tyto komponenty:

Komponenty pro správu konfigurace - Výukový program pro loutky - Edureka



Identifikace konfigurace: Jedná se o proces:

  • Označování položek konfigurace softwaru a hardwaru s jedinečnými identifikátory
  • Identifikace dokumentace popisující konfigurační položku
  • Seskupení souvisejících položek konfigurace do základních linií
  • Označení revizí konfiguračních položek a základních linií.

Řízení změn: Jedná se o systematický přístup k řešení změn jak z pohledu organizace, tak jednotlivce.

Účtování stavu konfigurace: To zahrnuje proces záznamu a hlášení popisů konfiguračních položek (např. hardwaru, softwaru, firmwaru atd.) a všech odchylek od základní linie během návrhu a výroby. V případě podezření na problémy lze rychle určit ověření základní konfigurace a schválené úpravy.

Audity konfigurace: Audity konfigurace poskytují mechanismus pro určení míry, do jaké je aktuální stav systému konzistentní s nejnovější základní úrovní a dokumentací. V zásadě se jedná o formální kontrolu k ověření, že dodávaný produkt bude fungovat tak, jak je inzerován, propagován nebo jakýmkoli způsobem přislíben zákazníkům. Využívá informace, které jsou k dispozici jako výsledek auditů kvality a testování, spolu s účetními informacemi o stavu konfigurace, aby zajistil, že bylo sestaveno to, co bylo požadováno.

Pojďme pochopit Configuration Management s případem použití. Předpokládejme, že pokud musíte aktualizovat konkrétní software nebo jej chcete nahradit, v takovém případě by měl být pro úspěšnou správu konfigurace dodržen níže uvedený vývojový diagram:

Nyní je ten správný čas na pochopení loutkové architektury.

Výukový program pro loutky - architektura Loutka

Loutka používá architekturu Master-Slave. Níže uvedený diagram zobrazuje to samé:

Na výše uvedeném obrázku jsou prováděny následující funkce:

  • Loutkový agent zasílá fakta loutkovému mistrovi. Fakta jsou v zásadědatový pár klíč / hodnota, který představuje nějaký aspekt stavu Slave, jako je jeho IP adresa, doba provozu, operační systém nebo to, zda se jedná o virtuální stroj. Fakta podrobně vysvětlím dále v blogu.
  • Loutkář používá fakta k sestavení katalogu, který definuje, jak by měl být otrok nakonfigurován. Katalogje dokument, který popisuje požadovaný stav pro každý zdroj, který Loutkář spravuje na Slave. Katalogy a zdroje podrobně vysvětlím později.
  • Puppet Slave se hlásí zpět k Masterovi, což znamená, že je konfigurace dokončena, což je viditelné na panelu Puppet.

Podívejte se na toto výukové video o loutkách, kde získáte podrobné informace o loutce.

Výukový program pro loutky pro začátečníky Školení DevOps Edureka

Výukový program pro loutky - komunikace loutky a otroka

Loutkář a otrok komunikují prostřednictvímzabezpečený šifrovaný kanál pomocí SSL. Níže uvedený diagram zobrazuje to samé:

Jak vidíte z výše uvedeného obrázku:

  • Puppet Slave žádá o certifikát Puppet Master.
  • Po obdržení certifikátu Puppet Master požádá Master o certifikát Slave.
  • Jakmile Master podepsal certifikát Slave, Slave požaduje konfiguraci / data.
  • Nakonec Puppet Master odešle konfiguraci do Puppet Slave.

Pojďme se nyní podívat na různé loutkové komponenty.

vytvořte parametr v tablo

Výukový program pro loutky - součásti Loutka

Projevy: Každý otrok má své konfigurační podrobnosti v Puppet Master, napsané v rodném loutkovém jazyce. Tyto podrobnosti jsou psány v jazyce, kterému loutka rozumí, a jsou označovány jako Manifesty. Skládají se z loutkového kódu a jejich názvy souborů používají znak .pp rozšíření. Jedná se v zásadě o loutkové programy.
Například: V Puppet Master můžete napsat Manifest, který vytvoří soubor a nainstaluje server Apache na všechny Puppet Slaves připojené k Puppet Master.

Modul: Loutkový modul je sbírka manifestů a dat (jako jsou fakta, soubory a šablony) a mají konkrétní strukturu adresářů. Moduly jsou užitečné pro organizaci vašeho loutkového kódu, protože vám umožňují rozdělit váš kód na více manifestů. Moduly jsou samostatné balíčky kódu a dat.

Zdroj: Zdroje jsou základní jednotkou pro modelování konfigurací systému. Každý zdroj popisuje nějaký aspekt systému, například konkrétní službu nebo balíček.

Znak: Facter shromažďuje základní informace (fakta) o Puppet Slave, jako jsou podrobnosti o hardwaru, nastavení sítě, typ a verze OS, IP adresy, MAC adresy, klíče SSH a další. Tato fakta jsou poté k dispozici v Manifestech loutkářských mistrů jako proměnné.

Kolektivní: Jedná se o rámec, který umožňuje paralelní provádění několika úloh na více slave. Vykonává různé funkce jako:

  • Interakce s klastry otroků, ať už v malých skupinách nebo velmi velkých rozmístěních.
  • K distribuci požadavků použijte paradigma vysílání. Všichni slave dostávají všechny požadavky současně, k žádostem jsou připojeny filtry a na požadavky bude reagovat pouze slave, kteří odpovídají filtru.
  • K volání vzdálených otroků použijte jednoduché nástroje příkazového řádku.
  • Napište vlastní zprávy o vaší infrastruktuře.

Katalogy: Katalog popisuje požadovaný stav každého spravovaného prostředku v podřízeném zařízení. Jedná se o kompilaci všech zdrojů, které Puppet Master aplikuje na daného otroka, a také vztahů mezi těmito prostředky.Katalogy sestavuje Loutkář z Manifestů a údajů poskytnutých otrokem (jako jsou fakta, certifikáty a prostředí, pokud je k dispozici), stejně jako volitelná externí data (například data z externího klasifikátoru otroků, exportované zdroje, a funkce). Master poté na požádání poskytne Slave zkompilovaný katalog.

V této loutkové výuce se moje další část zaměří na Hands-On.

Výukový program pro loutky - praktický

Ukážu vám, jak nasadit MySQL a PHP z Puppet Master do Puppet Slave. Pro demonstrační účely používám pouze jednoho otroka, k jednomu pánovi mohou být připojeny stovky otroků. K nasazení PHP a MySQL použiji předdefinované moduly dostupné na forge.puppet.com. Můžete také vytvořit své vlastní moduly.

Krok 1: V Puppet Master nainstalujte moduly MySQL a PHP.

Proveďte toto:

1) loutkový modul nainstalovat puppetlabs-mysql – verze 3.10.0

Tento modul MySQL instaluje, konfiguruje a spravuje službu MySQL. Tento modul spravuje jak instalaci, tak konfiguraci MySQL a také rozšiřuje Puppet, aby umožnil správu prostředků MySQL, jako jsou databáze, uživatelé a granty.

2) loutkový modul nainstalujte mayflower-php – verze 4.0.0-beta1

Tento modul se používá pro správu PHP, zejména php-fpm. PHP-FPM (FastCGI Process Manager) je alternativní implementace PHP FastCGI s některými dalšími funkcemi užitečnými pro weby jakékoli velikosti, zejména pro rušnější weby.

Krok 2: V Loutkové manifesty zahrnují MySQL server a PHP.

Proveďte toto: vi /etc/puppet/manifests/site.pp

Můžete použít jakýkoli jiný editor, například vim, gedit atd. V tomto souboru site.pp přidejte následující:

zahrnout ':: mysql :: server' zahrnout ':: php'

Uložte a ukončete.

Krok 3: Puppet Slaves pravidelně (po každých 30 minutách) stahuje svou konfiguraci z Master. Vyhodnotí hlavní manifest a použije modul, který specifikuje nastavení MySQL a PHP. Chcete-li to okamžitě vyzkoušet, musíte na každém uzlu Slave spustit následující příkaz:

třída skeneru v příkladech Java

Proveďte toto: loutkový agent -t

Takže MySQL a PHP jsou úspěšně nainstalovány na uzlu Slave.

Krok 4: Chcete-li zkontrolovat nainstalovanou verzi MySQL a PHP:

Proveďte toto:

1) mysql -v

2) php-verze

Gratulujeme! MySQl a PHP jsou ve vašem Puppet Slave funkční. Zde jsem vám ukázal pouze jednoho otroka, ale představte si, jestli jsou stovky otroků. V tomto scénáři se vaše práce stane tak snadnou, stačí zadat konfigurace v Puppet Master a Puppet Slaves automaticky vyhodnotí hlavní manifest a použije modul, který určuje nastavení MySQL a PHP.

Pokud jste to našli Výukový program pro loutky relevantní, podívejte se na Edureka, důvěryhodná online vzdělávací společnost se sítí více než 250 000 spokojených studentů po celém světě. Kurz certifikace Edureka DevOps pomáhá studentům získat odborné znalosti v různých procesech a nástrojích DevOps, jako jsou Puppet, Jenkins, Nagios a GIT pro automatizaci více kroků v SDLC.