Puppet: Update Debian Wheezy auf puppetlabs Pakete

Ich habe auf allen meinen Servern puppet auf die Version von puppetlabs aktualisiert. Dafür habe ich folgende Schritte durchgeführt:

  1. Herunterladen der puppetlabs-release-wheezy.deb von apt.puppetlabs.com und Installation auf dem Node:
    cd /tmp
    wget http://apt.puppetlabs.com/puppetlabs-release-wheezy.deb
    dpkg -i puppetlabs-release-wheezy.deb
    aptitude update && aptitude safe-upgrade
  2. Auf dem puppetmaster musste ich noch ein aptitude dist-upgrade durchfühhren
  3. Ich hatte das Paket libaugeas-ruby1.8 installiert was zu Problemen führte. Deswegen:
    aptitude install libaugeas-ruby && aptitude purge libaugeas-ruby1.8
  4. Die Einstellung templatedir in der puppet.conf ist deprecated und führt zu entsprechenden Warnungen wenn der agent läuft. Mit dem folgenden Snippet in meinem basics Modul habe ich es entfernt:
      augeas { 'puppet.conf':
        context => '/files/etc/puppet/puppet.conf',
        changes => [
          'rm main/templatedir',
        ],
        notify  => Service['puppet'],
      }
  5. Das Monitoring des Puppetmasters wie in dem verlinkten Blogeintrag beschrieben schlug mit einem HTTP 403 fehl. Die Ursache lag in einer Änderung der Syntax in der auth.conf. Dort muss nun anstatt allow 1.2.3.4 ein allow_ip 1.2.3.4 stehen.

Snippets: git, aptitude, who, mysql, tcpdump, lftp

Ein Sammelsurium von diversen Kommandos die sich angesammelt haben und die ich mir eben aufschreiben musste:

  • GIT – Die Aenderungen von Commit XYZ anzeigen:
    git show COMMITHASH
  • GIT – In den git commit messages suchen:
    git log --all --grep "foo"
  • GIT – Was hab ich noch mal in dieser Datei seit dem letzten pullen geaendert?
    git diff HEAD /path/to/file
  • APTITUDE – Was ist die Abhaengigkeitskette warum dieses Paket installiert ist:
    aptitude why PACKAGENAME
  • WHO – Wann wurde das System das letzte mal neu gestartet?
    who -b
  • MYSQL – Wie erzeuge ich die Tabelle neu:
    SHOW CREATE TABLE tabellenname;
  • TYPDUMP – Mit tcpdump den Traffic mitschneiden und in einer Datei speichern um diese später mit wireshark zu analysieren:
    tcpdump -i eth0 host 192.168.1.30 -X -s0 -w /tmp/foo
  • LFTP: Verzeichnislisting rekursiv erzeugen und Ausgabe in einer Textdatei speichern:
    lftp -u user,pass -e 'find /;bye' host > file_list

Übersicht: Artikel zum Thema Puppet

Weil ich es gerade selbst brauche, hier eine Übersicht der von mir geschriebenen Blogposts zum Thema Puppet: