Puppet (moduly)

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání

V minulé kapitole bylo demonstrováno vytvoření jednoduchého manifestu, pro práci se souborem /etc/hosts.

Chceme-li sofistikovanější údržbu tohoto souboru, je je lepší vytvořit samostatný modul. A tento modul do třídy basic vložit přes direktivu include. Jelikož má jít o modul pro údržbu souborů /etc/hosts, tak pro název modulu použiju stejné jméno a rovnou provedu úpravu souboru /etc/puppet/manifests/node.pp

Poznámka
class basic {
    include hosts
}

node "master.felk.cvut.cz" {
    include basic
}

Kde jsou moduly uloženy?

Všechny moduly má Puppet uloženy v adresáři /etc/puppet/modules. Jméno modulu, které natahuje direktiva include je relevantní názvu podadresáře.

Tento poadresář kromě povinného adresáře manifests může obsahovat ještě další adresáře:

files
ve kterém jsou soubory, které bude puppet distribuovat beze změn (ssh klíče, výchozí konfigurační soubory atp.)
templates
do kterého se ukládají šablony konfiguračních souborů, což jsou soubory s příponou .erb

Vůbec nevadí pokud zůstane některý těchto adresářů z nich prázdný, takže můžeme všechny tři adresáře vytvořit najednou:

Poznámka
 root@master~# mkdir -p /etc/puppet/modules/<jméno modulu>/{files,manifests,templates}

Výchozím souborem modulu pak je soubor <code>init.pp</code>, ve kterém je modul inicializován jako třída.

Puppet (příklady) hosts

Řešení závislostí

Puppet (příklady) experienced