Puppet paigaldamine ja seadistamine Centos & Ubuntu: Difference between revisions

From ICO wiki
Jump to navigationJump to search
(Created page with 'Sissejuhatus Antud artikkel kirjeldab, kuidas paigaldada ja seadistada Puppet Centos ja Ubuntu operatsioonisüsteemides. Artikkel on mõeldud algajale administraatorile, kes osk…')
 
 
(36 intermediate revisions by the same user not shown)
Line 1: Line 1:
Sissejuhatus
=Autor=
Priit Lume
AK51
Viimati muudetud 04.01.2013
 
=Sissejuhatus=


Antud artikkel kirjeldab, kuidas paigaldada ja seadistada Puppet Centos ja Ubuntu operatsioonisüsteemides.
Antud artikkel kirjeldab, kuidas paigaldada ja seadistada Puppet Centos ja Ubuntu operatsioonisüsteemides.
Artikkel on mõeldud algajale administraatorile, kes oskab kasutada linuxi käsurida ning on tuttav võrgu toimimise põhimõtetega.
Puppet on vabavaraline konfiguratsioonihaldus tarkvara, mis võimaldab tsentraliseeritult hallata erinevaid operatsioonisüsteeme kasutavaid servereid ja tööjaamu. Puppet töötab klient-server põhimõttel, kus klientmasinad käivad regulaarselt serverilt konfiguratsioone tõmbamas. Nii on võimalik vaid ühes kohas tehtavad muudatused kiiresti jagada määratud seadmetele.
Juhend on mõeldud algajale administraatorile, kellel on mõningane kogemus Linuxi käsureaga ning on tuttav võrgu toimimise põhimõtetega.
Antud näites paigaldatakse Puppetmaster CentOS 6.3 serverile ja Puppet klient Ubuntu 12.04 desktopile.
Puppetmasteri ja Puppeti paigaldamine on kirjeldatud kummagi operatsioonisüsteemi kohta eraldi, edasised sammud läbisegi.
Kuna enamus toimingute tegemiseks on vajalikud root taseme õigused, siis ei hakka seda käskude juures eraldi välja tooma.
 
=CentOS=
==Paigaldamine==
Puppet Labs repository lisamine:
sudo rpm -ivh http://yum.puppetlabs.com/el/6/products/i386/puppetlabs-release-6-6.noarch.rpm
Puppet Master serveri paigaldmaine:
yum install puppet-server


Puppet paigaldamine
==Seadistamine==


Kindlasti tuleks esmalt paigaldada ja seadistada Puppet server ehk Puppetmaster, kuna ilma selleta ei oleks klientidel kusagile pöörduda.
CentOS serveril on vaikimis aktiivne iptables tulemüür. Et kliendid saaksid ühendust Puppetmaster teenusega, tuleb tulemüür deaktiveerida või lubada vastav tcp port (vaikimisi 8140).


Centos
Iptables deaktiveerimiseks
Puppet Labs repository lisamine:
/etc-init.d/iptables stop
sudo rpm -ivh http://yum.puppetlabs.com/el/6/products/i386/puppetlabs-release-6-6.noarch.rpm
Või tcp port 8140 lubamiseks
Puppet Master serveri paigaldmaine:
iptables -A INPUT -p tcp --dport 8140 -j ACCEPT
yum install puppet-server
iptables-save
service puppetmaster start
/etc-init.d/iptables restart
Kui vaja, et serveri käivitamisel käivtuks Puppet automaatselt
chkconfig puppetmaster on
Sertide jaoks
puppet cert list
puppet cert sign agent1.localdomain


Puppetmaster peamine konfiguratsioonifail on /etc/puppet/puppet.conf
Tavaseadete korral ei ole otsest vajadus selle muutmiseks, kuid sealt saab näiteks määrata, millisel pordil Puppetmaster kuulab.
Puppetmaster teenuse käivitamine
service puppetmaster start
Kui vaja, et serveri käivitamisel käivtuks Puppet automaatselt, tuleks sisestada
chkconfig puppetmaster on


Ubuntu
=Ubuntu=
Uusima versiooni paigaldamiseks tasub lisada Puppet labsi repo, sest Ubuntu ja Debian vaikimis seadisitatud repodes ei pruugi olla värskeim versioon.
==Paigaldamine==
Repository lisamine
Uusima versiooni paigaldamiseks tasub lisada Puppet labsi repository, sest Ubuntu ja Debian vaikimisi seadistatud repositorydes ei pruugi olla värskeim versioon.
Kõigepealt tuleks leida lehelt http://apt.puppetlabs.com/ vastava ubuntu versiooni paigaldus pakk ja see siis alla tõmmata.
Kõigepealt tuleks leida lehelt http://apt.puppetlabs.com/ vastava operatsioonisüsteemi versiooni paigaldus pakk ja see siis alla tõmmata.
Antud näites on selleks Ubuntu 12.04 LTS “Precise Pangolin”, seega alla laadimiseks
Antud näites on selleks Ubuntu 12.04 LTS “Precise Pangolin”, seega alla laadimiseks
wget http://apt.puppetlabs.com/puppetlabs-release-precise.deb
wget http://apt.puppetlabs.com/puppetlabs-release-precise.deb
Ja paigaldamiseks
Ja paigaldamiseks
sudo dpkg -i puppetlabs-release-precise.deb
sudo dpkg -i puppetlabs-release-precise.deb
sudo apt-get install puppet
sudo apt-get install puppet
Automaatseks käivitamiseks
chkconfig puppe on
Käivitamiseks niisama
sudo puppet agent --test


==Seadistamine==


Puppetklient eeldab, et Puppetmaster serveri nimi on puppet, seega tuleks serveri nimi määrata konfiguratsioonifailis või lisada DNS seadetesse või /etc/hosts faili nimi puppet ja Puppetmaster serveri ip aadress.


Seaded
Puppet kliendi seaded asuvad
/etc/puppet/puppet.conf
/etc/puppet/puppet.conf


=Kasutamine=
Puppeti kasutamiseks tuleb luua usaldus kliendi ja serveri  vahel. Klientmasinast tuleb esmalt taotleda sertifikaat käsuga
puppet agent --test


Viited
Puppetmaster serveril tuleb allkirjastamist ootavate sertifikaatide kuvamiseks sisestada käsk
puppet cert list
Sertifikaadi allkirjastamiseks
puppet cert sign kliendinimi.domeen
Kui allkirjastamist ootavaid sertifikaate on palju, saab kõik korraga allkirjastada, kasutades käsku
puppet cert sign -all
 
Kui sertifikaat on allkirjastatud ja usaldus loodud, siis eelmise käsu kordamisel tõmbab ja rakendab klientmasin Puppetmasterilt konfiguratsioonid.
Puppetmaster kasutab konfiguratsioonide asukohtade defineerimiseks faili /etc/puppet/manifests/site.pp
Et kiirelt kontrollida toimivust, kirjutasin otse sinna faili järgneva:
file { "/etc/timezone":
        owner => "root",
        group => "root",
        mode  => 644,
}
Antud seadistus muudab faili /etc/timezone omaniku ja failiõigused. Seejärel muudan klientmasinas antud faili õiguseid käsuga chmod ning käivitan uuesti käsu
puppet agent --test
Käsu tulemusel taastuvad faili /etc/timezone algsed õigusd.
 
=Kokkuvõte=
 
Puppet on väga võimalusterohke tarkvara haldamaks kogu organisatsiooni masinaid keskselt. Kahjuks ei võimalda selle artikli maht tutvustada klientmasinate seadistamist detailides, kuid kuna tegemist on väga elujõulise vabavara kommuuniga, siis igaüks peaks leidma endale sobivaid seadistus variante või vähemalt viiteid, kuidas seda saavutada Puppet Labs lehelt.
 
=Viited=
http://docs.puppetlabs.com/guides/installation.html#post-install
http://docs.puppetlabs.com/guides/installation.html#post-install
http://docs.puppetlabs.com/learning/agent_master_basic.html
http://docs.puppetlabs.com/learning/agent_master_basic.html
http://www.how2centos.com/centos-6-puppet-install/
http://www.how2centos.com/centos-6-puppet-install/
http://aaronwalrath.wordpress.com/2010/09/03/installing-and-configuring-puppet-on-centos-linux/
http://aaronwalrath.wordpress.com/2010/09/03/installing-and-configuring-puppet-on-centos-linux/
http://bitcube.co.uk/content/puppet-errors-explained
 
[[Category: Linuxi administreerimine]]

Latest revision as of 09:29, 4 January 2013

Autor

Priit Lume AK51 Viimati muudetud 04.01.2013

Sissejuhatus

Antud artikkel kirjeldab, kuidas paigaldada ja seadistada Puppet Centos ja Ubuntu operatsioonisüsteemides. Puppet on vabavaraline konfiguratsioonihaldus tarkvara, mis võimaldab tsentraliseeritult hallata erinevaid operatsioonisüsteeme kasutavaid servereid ja tööjaamu. Puppet töötab klient-server põhimõttel, kus klientmasinad käivad regulaarselt serverilt konfiguratsioone tõmbamas. Nii on võimalik vaid ühes kohas tehtavad muudatused kiiresti jagada määratud seadmetele. Juhend on mõeldud algajale administraatorile, kellel on mõningane kogemus Linuxi käsureaga ning on tuttav võrgu toimimise põhimõtetega. Antud näites paigaldatakse Puppetmaster CentOS 6.3 serverile ja Puppet klient Ubuntu 12.04 desktopile. Puppetmasteri ja Puppeti paigaldamine on kirjeldatud kummagi operatsioonisüsteemi kohta eraldi, edasised sammud läbisegi. Kuna enamus toimingute tegemiseks on vajalikud root taseme õigused, siis ei hakka seda käskude juures eraldi välja tooma.

CentOS

Paigaldamine

Puppet Labs repository lisamine:

sudo rpm -ivh http://yum.puppetlabs.com/el/6/products/i386/puppetlabs-release-6-6.noarch.rpm

Puppet Master serveri paigaldmaine:

yum install puppet-server

Seadistamine

CentOS serveril on vaikimis aktiivne iptables tulemüür. Et kliendid saaksid ühendust Puppetmaster teenusega, tuleb tulemüür deaktiveerida või lubada vastav tcp port (vaikimisi 8140).

Iptables deaktiveerimiseks

/etc-init.d/iptables stop

Või tcp port 8140 lubamiseks

iptables -A INPUT -p tcp --dport 8140 -j ACCEPT
iptables-save
/etc-init.d/iptables restart

Puppetmaster peamine konfiguratsioonifail on /etc/puppet/puppet.conf Tavaseadete korral ei ole otsest vajadus selle muutmiseks, kuid sealt saab näiteks määrata, millisel pordil Puppetmaster kuulab. Puppetmaster teenuse käivitamine

service puppetmaster start

Kui vaja, et serveri käivitamisel käivtuks Puppet automaatselt, tuleks sisestada

chkconfig puppetmaster on

Ubuntu

Paigaldamine

Uusima versiooni paigaldamiseks tasub lisada Puppet labsi repository, sest Ubuntu ja Debian vaikimisi seadistatud repositorydes ei pruugi olla värskeim versioon. Kõigepealt tuleks leida lehelt http://apt.puppetlabs.com/ vastava operatsioonisüsteemi versiooni paigaldus pakk ja see siis alla tõmmata. Antud näites on selleks Ubuntu 12.04 LTS “Precise Pangolin”, seega alla laadimiseks

wget http://apt.puppetlabs.com/puppetlabs-release-precise.deb

Ja paigaldamiseks

sudo dpkg -i puppetlabs-release-precise.deb
sudo apt-get install puppet

Seadistamine

Puppetklient eeldab, et Puppetmaster serveri nimi on puppet, seega tuleks serveri nimi määrata konfiguratsioonifailis või lisada DNS seadetesse või /etc/hosts faili nimi puppet ja Puppetmaster serveri ip aadress.

Puppet kliendi seaded asuvad /etc/puppet/puppet.conf

Kasutamine

Puppeti kasutamiseks tuleb luua usaldus kliendi ja serveri vahel. Klientmasinast tuleb esmalt taotleda sertifikaat käsuga

puppet agent --test

Puppetmaster serveril tuleb allkirjastamist ootavate sertifikaatide kuvamiseks sisestada käsk

puppet cert list

Sertifikaadi allkirjastamiseks

puppet cert sign kliendinimi.domeen

Kui allkirjastamist ootavaid sertifikaate on palju, saab kõik korraga allkirjastada, kasutades käsku

puppet cert sign -all

Kui sertifikaat on allkirjastatud ja usaldus loodud, siis eelmise käsu kordamisel tõmbab ja rakendab klientmasin Puppetmasterilt konfiguratsioonid. Puppetmaster kasutab konfiguratsioonide asukohtade defineerimiseks faili /etc/puppet/manifests/site.pp Et kiirelt kontrollida toimivust, kirjutasin otse sinna faili järgneva:

file { "/etc/timezone":
       owner => "root",
       group => "root",
       mode  => 644,
}

Antud seadistus muudab faili /etc/timezone omaniku ja failiõigused. Seejärel muudan klientmasinas antud faili õiguseid käsuga chmod ning käivitan uuesti käsu

puppet agent --test

Käsu tulemusel taastuvad faili /etc/timezone algsed õigusd.

Kokkuvõte

Puppet on väga võimalusterohke tarkvara haldamaks kogu organisatsiooni masinaid keskselt. Kahjuks ei võimalda selle artikli maht tutvustada klientmasinate seadistamist detailides, kuid kuna tegemist on väga elujõulise vabavara kommuuniga, siis igaüks peaks leidma endale sobivaid seadistus variante või vähemalt viiteid, kuidas seda saavutada Puppet Labs lehelt.

Viited

http://docs.puppetlabs.com/guides/installation.html#post-install

http://docs.puppetlabs.com/learning/agent_master_basic.html

http://www.how2centos.com/centos-6-puppet-install/

http://aaronwalrath.wordpress.com/2010/09/03/installing-and-configuring-puppet-on-centos-linux/