Programovanie

Recenzia: Puppet vs. Chef vs. Ansible vs. Salt

Šírenie virtualizácie spojené s rastúcou silou štandardných serverov v priemysle a dostupnosťou cloudových výpočtov viedlo k výraznému zvýšeniu počtu serverov, ktoré je potrebné spravovať v rámci organizácie alebo bez nej. Tam, kde sme si kedysi vystačili so stojanmi fyzických serverov, ku ktorým sme mali prístup v dátovom centre na konci chodby, musíme teraz spravovať oveľa viac serverov, ktoré by sa dali rozšíriť po celom svete.

To je miesto, kde vstupujú do hry nástroje na orchestráciu a správu dátových centier. V mnohých prípadoch spravujeme skupiny identických serverov, na ktorých prevádzkujeme rovnaké aplikácie a služby. Sú nasadené na virtualizačných rámci v rámci organizácie alebo sú spustené ako cloud alebo hostené inštancie vo vzdialených dátových centrách. V niektorých prípadoch môžeme hovoriť o veľkých inštaláciách, ktoré existujú iba na podporu veľmi veľkých aplikácií, alebo o veľkých inštaláciách, ktoré podporujú nespočetné množstvo menších služieb. V obidvoch prípadoch nemožno vylúčiť schopnosť mávať prútikom a spôsobiť, aby sa všetci ohýbali podľa vôle správcu. Je to jediný spôsob riadenia týchto veľkých a rastúcich infraštruktúr.

Puppet, Chef, Ansible a Salt boli postavené s týmto hlavným cieľom: uľahčiť oveľa ľahšiu konfiguráciu a údržbu desiatok, stoviek alebo dokonca tisícov serverov. To neznamená, že menšie obchody nebudú mať z týchto nástrojov úžitok, pretože automatizácia a orchestrácia všeobecne uľahčujú život v infraštruktúre akejkoľvek veľkosti.

Pozrel som sa do hĺbky na každý z týchto štyroch nástrojov, preskúmal som ich dizajn a funkciu a zistil som, že zatiaľ čo niektoré dosiahli vyššie skóre ako iné, pre každého existuje miesto, kam sa hodí, v závislosti od cieľov nasadenia. Tu zhŕňam svoje zistenia.

Bábkové podnikanie

Bábka sa nepochybne teší najväčšiemu podielu mysle zo všetkých štyroch. Je to najkompletnejší z hľadiska dostupných akcií, modulov a používateľských rozhraní. Loutkové predstavuje celý obraz orchestrácie dátových centier, zahŕňa takmer každý operačný systém a ponúka hlboké nástroje pre hlavné operačné systémy. Počiatočné nastavenie je pomerne jednoduché a vyžaduje inštaláciu hlavného servera a agentov klienta na každom systéme, ktorý sa má spravovať.

Odtiaľ je CLI (rozhranie príkazového riadku) jednoduché, čo umožňuje sťahovanie a inštaláciu modulov prostredníctvom servera bábka príkaz. Potom sú potrebné zmeny v konfiguračných súboroch, aby sa modul prispôsobil požadovanej úlohe, a klienti, ktorí by mali dostať pokyny, tak urobia pri registrácii u hlavného servera alebo prostredníctvom stlačenia, ktoré okamžite spustí úpravy.

K dispozícii sú tiež moduly, ktoré umožňujú a konfigurujú inštancie cloudového servera a inštancie virtuálnych serverov. Všetky moduly a konfigurácie sú zostavené s jazykom špecifickým pre Puppet založeným na Ruby alebo samotnej Ruby, a teda okrem schopností správy systému budú vyžadovať aj programové znalosti.

Výsledková listinaŠkálovateľnosť (20.0%) Dostupnosť (20.0%) Výkon (10.0%) Hodnota (10.0%) Zvládanie (20.0%) Interoperabilita (20.0%) Celkové skóre (100%)
AnsibleWorks Ansible 1.38.09.09.09.08.07.0 8.2
Podnikový šéfkuchár 11.49.09.08.09.07.08.0 8.3
Bábkové podnikanie 3.09.09.09.09.09.09.0 9.0
SaltStack Enterprise 0.17.09.09.09.09.09.08.0 8.8
$config[zx-auto] not found$config[zx-overlay] not found