Puppet seadistamine Ubuntu süsteemis

From ICO wiki
Revision as of 17:28, 8 January 2013 by Tparnpuu (talk | contribs) (uued ip aadressid hosts faili)
Jump to navigationJump to search

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)