Administration:projekte:puppet:benutzung

From chaoswiki
Jump to navigation Jump to search

Puppet Benutzung

Puppet Server

Starten

  • Mit dem folgende Befehl wird der puppet daemon gestartet:
 /usr/sbin/puppetmasterd
  • Zum Testen, wird der daemon im fordergrund gestartet, das man die Ausgaben des daemon prüfen kann mit dem folgender Befehl:
 /usr/sbin/puppetmasterd –verbose –no-daemonize
  • Ebenfalls muss der deamon in den gewünschten runlevel eingetragen werden.


puppetca

  • Puppetca generiert, verwaltet und Autorisiert die SSL Schlüssel, die zwischen Server und Client benötigt werden.

Um eine Liste der noch nicht Autorisierten Puppet Clients zu erhalten, gibt man folgenden Befehl ein:

 /usr/sbin/puppetca --list

Um ein Puppet Client zu Autorisieren, wird folgender Befehl verwendet:

 /usr/sbin/puppetca --sign <HOST>.<DOMAIN>.ch

Um alle Puppet Clients die in der q warten, aufeinmal zu Autorisieren, wird folgender Befehl verwendet:

 /usr/sbin/puppetca --sign all

Um von Hand ein Schlüssel für einen bestimmten puppetd Client zu generieren, verwendet man folgenden Befehl:.

 /usr/sbin/puppetca --generate <HOST>.<DOMAIN>.ch

Hinweis

  • Der Puppetd Client muss noch wie folgt in der folgenden Konfigurations Datei eingetragen werden:

"/etc/puppet/manifests/nodes.pp"

 [...]
 node '<HOST>.<DOMAIN>.ch' {
 include workstation-dell
 [...]

Puppet Client

Starten

  • Zum Testen ohne Schlüssel generierung (durch die option --noop):
 puppetd --onetime --test --waitforcert 60 --noop
  • Zum Testen mit Schlüssel generierung:
 puppetd --onetime --test --waitforcert 60
  • Zum SSL-Schlüssel gerereieren sollte dieser nicht mit --test schon erzeugt sein, und um Puppet auszuführen mit einer Wartezeit von 60:
 puppetd --onetime --waitforcert 60
  • Einmaliges Ausführen aber ohne Aktion sowie Installation:
 puppetd --onetime --noop
  • Einmaliges Ausführen ohne Installation:
 puppetd --onetime --test
  • Einmalig Ausführen mit Installation:
 puppetd --onetime
  • Normal als daemon Ausführen:
 puppetd


Hinweis: Zum Testen wird beim ersten mal Grundsätzlich, die option "--noop" angewant, da allerdings beim ersten mal kein Key angelegt wird, wird dies beim ersten lauf nicht angegeben.

Beispiel: Neuer Puppet Client mit dem Hostnamen: "testws.<DOMAIN>.ch" einbinden
  • 1. Puppet installieren und die Konfiguration /etc/puppet/puppet.conf anpassen:
 [...]
 [puppetd]
 [...]
 server = <HOST>.<DOMAIN>.ch
  • 2. Mit folgendem Befehl, einen SSL Schlüssel generieren:
 puppetd --onetime --waitforcert 60
  • 3. Auf dem Puppetserver mit folgendem Befehl prüfen, ob eine Anfrage des besagten Puppet Client eingetroffen ist:
 /usr/sbin/puppetca --list
  • 4. Die Puppet Client Anfrage mit dem folgenden Befehl mit "root" rechten Autorisieren:
 /usr/sbin/puppetca --sign testws.<DOMAIN>.ch
  • 5. Mit dem folgenden Befehl auf dem Puppet Client prüfen, ob der Client erfolgreich Autorisiert wurde:
 puppetd --onetime --test --noop
Beispiel: Puppet Client löschen
  • 1. Auf dem Puppetmaster den Puppet Node: (testws.<DOMAIN>.ch) wie folgt löschen:
 rm /var/lib/puppet/yaml/node/testws.<DOMAIN>.ch.yaml
  • 2. Auf dem Puppetmaster unter dem folgenden Verzeichnis: "/var/lib/puppet/", mit folgendem Befehl nach dem Puppet Node suchen

und danach am besten von Hand löschen (oder mit pipe rm anhängen, wenn man sich absolut sicher ist):

 find /var/lib/puppet/ -name "testws.<DOMAIN>.ch.*"

Als Resultat sollte folgendes angezeigt werden:

 /var/lib/puppet/yaml/node/testws.<DOMAIN>.ch.yaml
 /var/lib/puppet/yaml/facts/testws.<DOMAIN>.ch.yaml
 /var/lib/puppet/ssl/ca/signed/testws.<DOMAIN>.ch.pem
  • 3. Den Puppetmaster neustarten (/usr/sbin/puppetmaster), fertig.