Puppet seadistamine Ubuntu süsteemis
Sissejuhatus
Juhendi verisoon 1.1 Käesolev juhend on mõeldud inimesele, kes oskab UNIX käsurida ja saab aru mis info paikneb /etc/hosts failis.
Juhend õpetab ja näitab kuidas installeerida ja seadistada Puppet master + kaks puppetit.
Selleks on vaja kolme masinat, millel jookseb ubuntu server.
Kõik näidetes kirjeldatud käsud käivitada administraatori õigustes.
example.com on näite domeen, vajadusel asenda see enda domeeniga.
Puppeti seadistamise Debian näitel leiad siit: https://wiki.itcollege.ee/index.php/Puppet_seadistamine_Debian_s%C3%BCsteemis
Joonis
Paigaldamine (Ubuntu server)
Lisame read /etc/hosts faili
Puppeti toimimiseks on vajalik täispikk domeeninimi. Hosts faili muutmine on vajalik ainult testkeskkonnas, kus ei ole DNS seadistamist. Need read lisame iga masina /etc/hosts faili
192.168.56.254 puppetmaster.example.com puppetmaster 192.168.56.201 puppetclient1.example.com puppetclient1 192.168.56.202 puppetclient2.example.com puppetclient2
Server / Puppetmaster
Puppetmasteri installeerimine
apt-get install puppet puppetmaster
Lubame puppet kliendid puppetmasteri failidele ligi
nano /etc/puppet/fileserver.conf
Vajadusel muudame read, et näeks välja järgmiselt:
[files] path /etc/puppet/files/ allow 192.168.1.0/24
[plugins] allow 192.168.1.0/24
Taaskäivitame puppetmasteri
/etc/init.d/puppetmaster restart
Klient / Puppet
Puppet kliendi installeerimine
sudo apt-get install puppet
Muudame faili etc/puppet/puppet.conf
nano /etc/puppet/puppet.conf
Vajadusel muudame read, et näeks välja järgmiselt:
[main] logdir=/var/log/puppet vardir=/var/lib/puppet ssldir=/var/lib/puppet/ssl rundir=/var/run/puppet factpath=$vardir/lib/facter pluginsync=true
[puppetmasterd] templatedir=/var/lib/puppet/templates
Lubame puppetil käivituda automaatselt
nano /etc/default/puppet
Vajadusel muudame
START=yes
Taaskäivitame puppeti
/etc/init.d/puppet restart
Puppetite lisamine puppetmasterisse
Puppet klient
Puppetmasterist sertifikaadi küsimiseks, käivitame käsu:
puppet agent --server puppetmaster.example.com --waitforcert 60
Puppetmasteris
Vaatame kes ootab sertifikaati
puppet cert -la
Puppetile sertifikaadi andmine
puppet cert --sign puppetclient1.example.com puppet cert --sign puppetclient2.example.com
Puppet mooduli loomine
Puppetmasterisse saab luua moodulid ja neid ka puppetitele määrata.
See juhend õpetab ja näitab kuidas lisada puppetitele apache2
Puppet faili hierarhia
|-modules.pp |-manifests-|-nodes.pp | |-site.pp | |-modules---|-apache2--------------|-manifests-|-init.pp
Puppetmasteri seadistamine
Puppetmaster ei vaja peale manifestide muutmist restarti
Loome puppeti jaoks vajalikud failid
touch /etc/puppet/manifests/site.pp touch /etc/puppet/manifests/nodes.pp touch /etc/puppet/manifests/modules.pp
Loome apache 2 mooduli jaoks vajalikud kaustad ja failid
mkdir -p /etc/puppet/modules/apache2/manifests touch /etc/puppet/modules/apache2/manifests/init.pp
Loome noded
Lisame apache 2 mooduli ainult serverile puppetclient1 Selleks muudame faili nodes.pp
nano /etc/puppet/manifests/nodes.pp
Lisame read
node basenode { } node 'puppetclient1.example.com' inherits basenode { include apache2 } node 'puppetclient2.example.com' inherits basenode { }
Mooduli loomine
Muudame apache2 init.pp faili
nano /etc/puppet/modules/apache2/manifests/init.pp
Lisame read
class apache2{
package {
'apache2':
ensure => installed
}
}
Mooduli testimiseks saame kasutada:
puppet apply --noop /etc/puppet/modules/apache2/manifests/init.pp
Lisame apache2 mooduli puppeti moodulisse
Lisame puppeti modules.pp faili vajalikud read:
nano /etc/puppet/manifests/modules.pp import "apache2"
Muudame site.pp faili
/etc/puppet/manifests/site.pp
Lisame rea:
import "nodes"
Puppetmasteri taaskäivitamine
service puppetmaster restart
Mooduli testimine puppetis
puppet agent --test --server puppetmaster.example.com
Kasulikud lingid ja kasutatud allikad
http://bitcube.co.uk/content/puppet-errors-explained - puppeti veateated
Autorid
Tarmo Trumm
Olle Tuur
Täiendanud: Toivo Pärnpuu (2013)