Difference between revisions of "Puppet paigaldamine ja seadistamine Centos & Ubuntu"

From ICO wiki
(Seadistamine ja kasutamine)
(Kasutamine)
 
(18 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
=Autor=
 +
Priit Lume
 +
AK51
 +
Viimati muudetud 04.01.2013
 +
 
=Sissejuhatus=
 
=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.
 
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.
 
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.
Artikkel on mõeldud algajale administraatorile, kes oskab kasutada linuxi käsurida ning on tuttav võrgu toimimise põhimõtetega.
+
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.
  
=Puppet paigaldamine=
+
=CentOS=
 
 
Kindlasti tuleks esmalt paigaldada ja seadistada Puppet server ehk Puppetmaster, kuna ilma selleta ei oleks klientidel kusagile pöörduda. Antud näites paigaldatakse Puppetmaster Centos operatsioonisüsteemile ja Puppet klient Ubuntule.
 
Kummagi operatsioonisüsteemiga tehtavad sammud on kirjeldatud eraldi, kuigi näiteks sertifikaatide allkirjastamisel tuleks kasutada serverit ja klienti vaheldumisi.
 
Kuna enamus toimingute tegemiseks on vajalikud root taseme õigused, siis ei hakka seda eraldi välja tooma.
 
 
 
=Centos=
 
 
==Paigaldamine==
 
==Paigaldamine==
 
Puppet Labs repository lisamine:
 
Puppet Labs repository lisamine:
Line 29: Line 31:
 
  /etc-init.d/iptables restart
 
  /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
 
Puppetmaster teenuse käivitamine
 
  service puppetmaster start
 
  service puppetmaster start
 
Kui vaja, et serveri käivitamisel käivtuks Puppet automaatselt, tuleks sisestada
 
Kui vaja, et serveri käivitamisel käivtuks Puppet automaatselt, tuleks sisestada
 
  chkconfig puppetmaster on
 
  chkconfig puppetmaster on
Allkirjastamist ootavate sertifikaatide kuvamiseks
 
puppet cert list
 
Certifikaadi allkirjastamiseks
 
puppet cert sign kliendinimi.domeen
 
Kui allkirjastamist ootavaid sertifikaate on palju, saab kõik korraga allkirjastada, kasutades käsku
 
puppet cert sign -all
 
  
 
=Ubuntu=
 
=Ubuntu=
Line 50: Line 48:
 
  sudo apt-get install puppet
 
  sudo apt-get install puppet
  
==Seadistamine ja kasutamine==
+
==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.
 
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.
Line 56: Line 54:
 
Puppet kliendi seaded asuvad
 
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
 +
 +
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=
 
=Viited=
Line 65: Line 91:
  
 
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/
 +
 +
[[Category: Linuxi administreerimine]]

Latest revision as of 10: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/