Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.


17.09.2019

PLNOG23 czyli sieci 5G,...

Największa polska konferencja telekomunikacyjna powraca do Krakowa! Wśród nowości ścieżka...
05.09.2019

Cloudya – nowa usługa NFON

Po ponad dekadzie ciągłego rozwoju technologii Cloudya, swobodna i niczym nie ograniczona...
02.09.2019

Na dużą skalę

Kaspersky Hybrid Cloud Security
02.09.2019

Bezpieczny brzeg sieci

Fortinet Secure SD-Branch
02.09.2019

Nowoczesne centra danych

AMD EPYC
30.08.2019

Dostęp do AI i ML

VMware Cloud Foundation
30.08.2019

Lekkość i moc

Toshiba Portégé A30-E
30.08.2019

Bez przestojów

APC Easy UPS On-Line
29.08.2019

Duże moce

Lenovo ThinkSystem SR635 i SR655

Autozarządzanie z Puppet

Data publikacji: 30-01-2017 Autor: Grzegorz Kuczyński
Rys. 1. Puppet – architektura...

Liczebność serwerów zarządzanych przez jednego administratora ciągle rośnie. Prędzej czy później stosowane dotychczas metody przestaną się sprawdzać i zajdzie potrzeba automatyzacji procesu zarządzania. Czy można użyć jednego narzędzia do administrowania wszystkimi serwerami znajdującymi się w naszej infrastrukturze? Oczywiście, takim narzędziem jest Puppet.

Popularność technologii wirtualizacyjnych, takich jak KVM czy Docker, sprawiła, że na jednej maszynie fizycznej zazwyczaj znajduje się wiele systemów wymagających oddzielnego zarządzania. Efektywne administrowanie taką infrastrukturą serwerów wymaga odpowiednich narzędzi, często określanych mianem IT Automation. Jednym z nich, a zarazem najpopularniejszą tego typu aplikacją jest Puppet, który wspomaga administratorów w automatycznej konfiguracji systemów. Dzięki niemu tysiącem serwerów można zarządzać tak samo jak setką, jeśli tylko ich konfiguracja ma być jednolita. Puppet znalazł również szerokie zastosowanie w ramach koncepcji DevOps. Mimo iż początkowo przeznaczony był głównie dla systemu Linux oraz na inne systemy z rodziny UNIX, to obecnie wspiera również platformę Windows. Puppet rozwijany jest jako projekt open source przy wsparciu firmy Puppet Labs, w związku z czym dostępny jest w dwóch odmianach: ogólnodostępnej Puppet oraz komercyjnej Puppet Enterprise. O przydatności tej ostatniej, ale również o całym produkcie może świadczyć fakt, iż używany jest on przez takie firmy jak Intel i nowojorska giełda NYSE oraz takie instytucje jak NASA czy CERN. Puppet jest bardzo skalowalny i może zaoszczędzić mnóstwo czasu również tym, którzy mają tylko 10 serwerów.

Puppet posiada dość osobliwą filozofię działania: administrator opisuje, jaki chce osiągnąć efekt końcowy, a Puppet sam dobiera sposób, w jaki zostanie to zrealizowane, w zależności od systemu operacyjnego. Puppet został również wyposażony we własny język programowania, który ma charakter deklaratywny. Deklaracja opisująca efekt końcowy nazywana jest manifestem. Jednak prawdziwą siłą narzędzia Puppet jest społeczność i tworzony przez nią zbiór ogólnodostępnych modułów, pozwalających na uniknięcie zbędnej pracy dzięki temu, że wiele osób automatyzuje te same zadania. Raz opracowany moduł wykorzystywany jest przez całą społeczność. To przynosi dodatkowe oszczędności czasu i pracy, za co zresztą Puppet najbardziej jest ceniony.

> Puppet Ecosystem

Puppet przeważnie uruchamiany jest w architekturze klient–serwer, ale można go również używać jako niezależnego narzędzia, co przydaje się szczególnie podczas testowania manifestów. Puppet składa się z wielu komponentów. Część z nich to zbiór narzędzi napisanych w języku Ruby, inne to logiczne fragmenty kodu bądź etapy przepływu informacji występujące pomiędzy serwerem a klientem.

Centralnym składnikiem architektury jest serwer zwany Puppet Master przeznaczony do instalacji tylko w systemie Linux. Mimo iż sam serwer jest napisany w Ruby, to został skompilowany za pomocą JRuby do kodu binarnego wirtualnej maszyny Java.

Kolejnym komponentem jest klient (Puppet Agent), którego instalujemy na każdej maszynie zarządzanej centralnie z serwera. Puppet Agent jest tym komponentem, który rzeczywiście odpowiada za wprowadzanie zmian w zdalnych systemach. W związku z tym dostępny jest na wszystkie obsługiwane platformy. Jeden serwer może obsługiwać wiele hostów, na których zainstalowany jest agent programu Puppet, ale nie każdy z tych hostów musi realizować te same zadania. Inaczej mówiąc, jeden serwer może wprowadzać różne konfiguracje na każdej ze sterowanych maszyn.

Artykuł pochodzi z miesięcznika: IT Professional

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"