Difference between revisions of "Puppet"

From HackerNet
Jump to: navigation, search
(Created page with "Puppet är ett automatiseringsverktyg för servrar. Puppet är ett väldigt kraftfullt verktyg, du kan få en fil att se likadan ut på 1000 olika servrar på bara 2 minuter e...")
 
Line 1: Line 1:
Puppet är ett automatiseringsverktyg för servrar. Puppet är ett väldigt kraftfullt verktyg, du kan få en fil att se likadan ut på 1000 olika servrar på bara 2 minuter eller att se till att SSH confen är den samma. Puppet kan köras i både Unix och Windows miljör. Många stora företag använder Puppet tex, Google, Twitter, Spotify, Dell.
+
Puppet är ett automatiseringsverktyg för servrar. Puppet är ett väldigt kraftfullt verktyg, du kan få en fil att se likadan ut på 1000 olika servrar på bara 2 minuter eller att se till att SSH confen är den samma. Puppet kan köras i både Unix och Windows miljör. Många stora företag använder Puppet tex, Google, Twitter, Spotify, Dell. Puppet är mycket användbart om man har servrar med olika operativsystem. Skillnaderna mellan olika operativsystem spelar ingen roll, man kan sätta upp en huvudserver och lagrar konfigurationer för en alla servrar. Huvudservern kör puppetmasterd och klienterna kör puppetd. Klienterna ansluter regelbundet till huvudservern för att synkronisera sina konfigurationer och rapportera alla lokala ändringar tillbaka till huvudservern. Puppetmaster måste vara av samma version eller nyare än de klienter som ansluter till den.
 +
 
 +
=Installation=
 +
===Server===
 +
''Ubuntu 14.04 LTS''
 +
sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get -y install puppetmaster rdoc
 +
touch /etc/puppet/manifests/site.pp
 +
''Fedora 21 Server''
 +
sudo yum update && sudo yum install puppet-server
 +
touch /etc/puppet/manifests/site.pp
 +
===Klient===
 +
sudo apt-get update && sudo apt-get upgrade && sudo apt-get -y install puppet
 +
sudo yum update && sudo yum install puppet
 +
 
 +
=Konfiguration=
 +
Default för att hitta till mastern gör klienterna ett namnuppslag på puppet. Sätt upp i din DNS så att puppet pekar mot mastern. T.ex. puppet.exempel.se. Sedan på klienten:
 +
echo "search exempel.se" | sudo tee -a /etc/resolv.conf
 +
Om klienten använder DHCP kan det hända att resolv.conf skrivs över.<br/>
 +
Testa
 +
ping puppet
 +
 
 +
==SSL==
 +
All kommunikation görs med SSL och certifikat används för autentisering.<br/>
 +
På klient:
 +
puppet agent --waitforcert 120 --test
 +
På server:
 +
puppet cert list
 +
puppet cert sign klient.exempel.se
 +
 
 +
=Puppetmasterd=

Revision as of 21:58, 13 May 2015

Puppet är ett automatiseringsverktyg för servrar. Puppet är ett väldigt kraftfullt verktyg, du kan få en fil att se likadan ut på 1000 olika servrar på bara 2 minuter eller att se till att SSH confen är den samma. Puppet kan köras i både Unix och Windows miljör. Många stora företag använder Puppet tex, Google, Twitter, Spotify, Dell. Puppet är mycket användbart om man har servrar med olika operativsystem. Skillnaderna mellan olika operativsystem spelar ingen roll, man kan sätta upp en huvudserver och lagrar konfigurationer för en alla servrar. Huvudservern kör puppetmasterd och klienterna kör puppetd. Klienterna ansluter regelbundet till huvudservern för att synkronisera sina konfigurationer och rapportera alla lokala ändringar tillbaka till huvudservern. Puppetmaster måste vara av samma version eller nyare än de klienter som ansluter till den.

Installation

Server

Ubuntu 14.04 LTS

sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get -y install puppetmaster rdoc
touch /etc/puppet/manifests/site.pp

Fedora 21 Server

sudo yum update && sudo yum install puppet-server
touch /etc/puppet/manifests/site.pp 

Klient

sudo apt-get update && sudo apt-get upgrade && sudo apt-get -y install puppet
sudo yum update && sudo yum install puppet 

Konfiguration

Default för att hitta till mastern gör klienterna ett namnuppslag på puppet. Sätt upp i din DNS så att puppet pekar mot mastern. T.ex. puppet.exempel.se. Sedan på klienten:

echo "search exempel.se" | sudo tee -a /etc/resolv.conf

Om klienten använder DHCP kan det hända att resolv.conf skrivs över.
Testa

ping puppet

SSL

All kommunikation görs med SSL och certifikat används för autentisering.
På klient:

puppet agent --waitforcert 120 --test

På server:

puppet cert list
puppet cert sign klient.exempel.se

Puppetmasterd