Samouczek lalek
Puppet Tutorial to drugi blog z serii Puppet. Mam nadzieję, że przeczytałeś mój poprzedni blog na temat „ Co to jest Puppet ”, Która wyjaśnia zarządzanie konfiguracją i dlaczego jest ważne przy pomocy przypadków użycia.
W tym samouczku dla lalek zostaną omówione następujące tematy:
- Co to jest zarządzanie konfiguracją?
- Architektura lalek
- Komunikacja Puppet Master Slave
- Komponenty lalek
- Praktyczny
Co to jest zarządzanie konfiguracją?
W moim poprzedni blog , Przedstawiłem wprowadzenie do zarządzania konfiguracją i wyzwań, które pomaga nam ono pokonać. W tym samouczku lalek wyjaśnię ci różne współzależne czynności zarządzania konfiguracją.Ale zanim to nastąpi, zrozummy, co to jest Element konfiguracji (CI). Element konfiguracji to dowolny składnik usługi, element infrastruktury lub inny element, którym należy zarządzać w celu zapewnienia pomyślnego świadczenia usług. Przykłady CI obejmują dokumenty wymagań, oprogramowanie, modele i plany.
Zarządzanie konfiguracją składa się z następujących elementów:
- Identyfikacja konfiguracji
- Zarządzanie zmianami
- Rozliczanie stanu konfiguracji
- Audyty konfiguracji
Poniższy diagram wyjaśnia te komponenty:
Identyfikacja konfiguracji: Jest to proces:
- Etykietowanie elementów konfiguracji oprogramowania i sprzętu za pomocą unikalnych identyfikatorów
- Zidentyfikowanie dokumentacji opisującej element konfiguracji
- Grupowanie powiązanych elementów konfiguracji w linie bazowe
- Etykietowanie wersji elementów konfiguracji i linii bazowych.
Zarządzanie zmianami: Jest to systematyczne podejście do radzenia sobie ze zmianą zarówno z perspektywy organizacji, jak i jednostki.
Rozliczanie stanu konfiguracji: To obejmuje proces rejestrowania i raportowania opisów pozycji konfiguracji (np. sprzętu, oprogramowania, oprogramowania układowego itp.) oraz wszelkie odstępstwa od linii bazowej podczas projektowania i produkcji. W przypadku podejrzenia problemów można szybko zweryfikować konfigurację podstawową i zatwierdzone modyfikacje.
Audyty konfiguracji: Audyty konfiguracji zapewniają mechanizm określania stopnia, w jakim aktualny stan systemu jest zgodny z najnowszą bazą i dokumentacją. Zasadniczo jest to przegląd formalny w celu sprawdzenia, czy dostarczany produkt będzie działał zgodnie z reklamą, promocją lub w jakikolwiek sposób obiecany klientom. Wykorzystuje informacje dostępne w wyniku audytów jakości i testów wraz z informacjami dotyczącymi rozliczania statusu konfiguracji, aby zapewnić, że to, co było wymagane, zostało zbudowane.
Pozwól nam zrozumieć zarządzanie konfiguracją za pomocą przypadku użycia. Załóżmy, że jeśli musisz zaktualizować określone oprogramowanie lub chcesz je wymienić, w takim przypadku należy postępować zgodnie z poniższym schematem blokowym, aby pomyślnie zarządzać konfiguracją:
Teraz jest właściwy czas, aby zrozumieć architekturę lalek.
Samouczek lalek - Architektura Marionetka
Puppet wykorzystuje architekturę Master-Slave. Poniższy schemat przedstawia to samo:
Na powyższym obrazku wykonywane są następujące funkcje:
- Agent lalek wysyła fakty do Władcy Marionetek. W zasadzie są faktypara danych klucz / wartość, która reprezentuje pewien aspekt stanu Slave, taki jak adres IP, czas działania, system operacyjny lub to, czy jest to maszyna wirtualna. Szczegółowo wyjaśnię Fakty w dalszej części bloga.
- Puppet Master wykorzystuje fakty do kompilowania katalogu, który definiuje sposób konfiguracji urządzenia podrzędnego. Katalogto dokument opisujący pożądany stan każdego zasobu, którym Puppet Master zarządza na Slave. Później szczegółowo wyjaśnię katalogi i zasoby.
- Puppet Slave przekazuje raport do Mastera, wskazując, że Konfiguracja została zakończona, co jest widoczne w panelu Puppet.
Obejrzyj ten samouczek wideo Puppet, aby lepiej zrozumieć działanie Puppet.
Samouczek lalek dla początkujących | Szkolenie DevOps | Edureka
Puppet Tutorial - Puppet Master and Slave Communication
Puppet Master i Slave komunikują się przezbezpieczny kanał szyfrowany z pomocą SSL. Poniższy schemat przedstawia to samo:
Jak widać na powyższym obrazku:
- Puppet Slave prosi o certyfikat Puppet Master.
- Po otrzymaniu certyfikatu Puppet Master, Master prosi o certyfikat Slave.
- Gdy Master podpisze certyfikat Slave, Slave żąda konfiguracji / danych.
- Na koniec Puppet Master wyśle konfigurację do Puppet Slave.
Przyjrzyjmy się teraz różnym komponentom Puppet.
Samouczek lalek - składniki Marionetka
Manifesty: Każdy Slave ma swoje szczegóły konfiguracji w Puppet Master, napisane w rodzimym języku Puppet. Te szczegóły są napisane w języku, który Puppet może zrozumieć i nazywane są Manifestami. Składają się z kodu Puppet, a ich nazwy plików używają rozszerzenia .pp rozbudowa. Są to w zasadzie programy Puppet.
Na przykład: Możesz napisać Manifest w Puppet Master, który tworzy plik i instaluje serwer Apache na wszystkich Puppet Slaves podłączonych do Puppet Master.
Moduł: Moduł lalek to zbiór manifestów i danych (takich jak fakty, pliki i szablony), które mają określoną strukturę katalogów. Moduły są przydatne do organizowania kodu Puppet, ponieważ umożliwiają podzielenie kodu na wiele manifestów. Moduły to samodzielne pakiety kodu i danych.
Ratunek: Zasoby są podstawową jednostką do modelowania konfiguracji systemu. Każdy zasób opisuje jakiś aspekt systemu, na przykład określoną usługę lub pakiet.
hashmap i hashtable w java
Cecha: Facter gromadzi podstawowe informacje (fakty) o Puppet Slave, takie jak szczegóły sprzętu, ustawienia sieciowe, typ i wersja systemu operacyjnego, adresy IP, adresy MAC, klucze SSH i inne. Fakty te są następnie udostępniane w Manifestach Władcy Marionetek jako zmienne.
Mcollective: Jest to struktura umożliwiająca równoległe wykonywanie kilku zadań na wielu urządzeniach podrzędnych. Wykonuje różne funkcje, takie jak:
- Interakcja z klastrami niewolników, zarówno w małych grupach, jak i bardzo dużych wdrożeniach.
- Użyj paradygmatu rozgłaszania do dystrybucji żądań. Wszystkie jednostki podrzędne otrzymują wszystkie żądania w tym samym czasie, żądania mają dołączone filtry i tylko jednostki podrzędne pasujące do filtra będą działać na żądania.
- Użyj prostych narzędzi wiersza poleceń, aby wywołać zdalnych niewolników.
- Pisz niestandardowe raporty o swojej infrastrukturze.
Katalogi: Katalog opisuje żądany stan każdego zarządzanego zasobu w urządzeniu podrzędnym. Jest to zestawienie wszystkich zasobów, które Władca Marionetek stosuje do danego Slave, a także relacji między tymi zasobami.Katalogi są kompilowane przez Puppet Master na podstawie Manifestów i danych dostarczonych przez Slave (takich jak fakty, certyfikaty i środowisko, jeśli zostało dostarczone), a także opcjonalne dane zewnętrzne (takie jak dane z zewnętrznego klasyfikatora Slave, wyeksportowane zasoby, i funkcje). Następnie Master przekazuje skompilowany Katalog do Slave na żądanie.
Teraz, w tym samouczku lalek, moja następna sekcja skupi się na ćwiczeniach praktycznych.
Samouczek lalek - praktyczne
Pokażę ci, jak wdrożyć MySQL i PHP od Puppet Master do Puppet Slave. Używam tylko jednego Slave'a do celów demonstracyjnych, do jednego Mastera mogą być podłączone setki Slave. Aby wdrożyć PHP i MySQL, użyję predefiniowanych modułów dostępnych na forge.puppet.com. Możesz także tworzyć własne moduły.
Krok 1: W Puppet Master zainstaluj moduły MySQL i PHP.
Wykonaj to:
1) moduł puppet zainstalować puppetlabs-mysql - wersja 3.10.0
Ten moduł MySQL instaluje, konfiguruje i zarządza usługą MySQL. Ten moduł zarządza zarówno instalacją, jak i konfiguracją MySQL, a także rozszerza Puppet, aby umożliwić zarządzanie zasobami MySQL, takimi jak bazy danych, użytkownicy i granty.
2) instalacja modułu marionetek mayflower-php - wersja 4.0.0-beta1
Moduł ten służy do zarządzania PHP, w szczególności php-fpm. PHP-FPM (FastCGI Process Manager) to alternatywna implementacja PHP FastCGI z kilkoma dodatkowymi funkcjami przydatnymi w witrynach dowolnej wielkości, zwłaszcza w witrynach o większym natężeniu ruchu.
Krok 2: W Puppet Manifests zawiera serwer MySQL i PHP.
Wykonaj to: vi /etc/puppet/manifests/site.pp
Możesz użyć dowolnego innego edytora, takiego jak vim, gedit itp. W tym pliku site.pp dodaj:
include ':: mysql :: server' include ':: php'
Zapisz i wyjdź.
Krok 3: Puppet Slaves pobiera swoją konfigurację od Mastera okresowo (co 30 minut). Oceni główny manifest i zastosuje moduł, który określa konfigurację MySQL i PHP. Jeśli chcesz wypróbować to natychmiast, musisz uruchomić następujące polecenie na każdym węźle Slave:
Wykonaj to: agent marionetkowy -t
Tak więc MySQL i PHP zostały pomyślnie zainstalowane w węźle Slave.
jak zrobić zrzut ekranu w selenie
Krok 4: Aby sprawdzić zainstalowaną wersję MySQL i PHP:
Wykonaj to:
1) mysql -v
2) wersja php
Gratulacje! MySQl i PHP działają w Twoim Puppet Slave. Tutaj pokazałem ci tylko jednego niewolnika, ale wyobraź sobie, że są setki niewolników. W tym scenariuszu twoja praca staje się tak łatwa, wystarczy określić konfiguracje w Puppet Master, a Puppet Slaves automatycznie oceni główny manifest i zastosuje moduł, który określa konfigurację MySQL i PHP.
Jeśli znalazłeś to Samouczek lalek istotnych, Sprawdź autorstwa Edureka, zaufanej firmy zajmującej się edukacją online, z siecią ponad 250 000 zadowolonych uczniów rozsianych po całym świecie. Szkolenie Edureka DevOps Certification Training pomaga uczniom zdobyć wiedzę na temat różnych procesów DevOps i narzędzi, takich jak Puppet, Jenkins, Nagios i GIT, do automatyzacji wielu kroków w SDLC.