Nun, in einer Klasse, die von allen meinen Knoten enthalten ist, habe ich:
filebucket { puppet: server => "puppet.example.edu" }
Die Standardeinstellung im Dateityp ist die Sicherung in einem lokalen Dateibucket mit dem Namen "Puppet". Wenn Sie den "Puppet" -Dateibucket in einen Server-Filebucket ändern, erhalten Sie standardmäßig einen serverbasierten Filebucket.
Wenn Sie die Option beibehalten möchten, eine bestimmte Datei zu überschreiben, um einen lokalen Datei-Bucket zu verwenden, können Sie alternativ Folgendes tun:
filebucket { main: server => "puppet.example.edu"; }
File { backup => main }
Weitere Informationen zu Optionen finden Sie unter http://docs.puppetlabs.com/references/latest/type.html#filebucket .
Dies führt Punkt 1 aus, da die Knoten angewiesen werden, alle denselben einzelnen Server für den Filebucket zu verwenden. Artikel 3 ist kostenlos erhältlich, da immer noch alles über eine SSL-basierte Verbindung mit SSL-Zertifikatsüberprüfung läuft.
Filebucket ist vor allem im Falle einer Wiederherstellung nützlich, die wahrscheinlich am selben Tag stattfindet. In diesem Fall sehen Sie sich den Bericht an und verwenden Sie den Befehl " filebucket
" oder " puppet filebucket
", um den ursprünglichen Inhalt basierend auf der md5sum im Bericht abzurufen.
In Punkt 2 wird es schwierig ...
Ich beschneide es mit einem Skript wie diesem:
find /var/lib/puppet/clientbucket/ -type f -mtime +45 -atime +45 -delete
Dadurch werden alle Elemente entfernt, die älter als 45 Tage sind und auf die in dieser Zeit überhaupt nicht zugegriffen wurde. Die 45 Tage basieren auf unserer Richtlinie zur Sicherung und Aufbewahrung von Sicherungen, da diese für eine Sicherung mit langer Aufbewahrungsdauer ausreicht und uns eine theoretische Wiederherstellungszeit von 18 Monaten bietet.
Welche Art von Analyse suchen Sie? Das Bucket-Setup auf dem Server ist eine von md5sum organisierte Hierarchie. In einem Verzeichnisnamen, der mit md5sum übereinstimmt, gibt es "Pfade", die angeben, welche Datei und welcher "Inhalt" die eigentliche Datei ist. Sie müssen sich die Berichte ansehen, um zu sehen, von welchem System sie stammen.
Ich mache keine Audits. Welche Art von Auditing suchen Sie? Das könnte viele Dinge bedeuten.
Ein Vorschlag wäre, Dateien zu einem Revisionskontrollserver (svn, git) hinzuzufügen. Ich speichere alle Dateien, die mit einem bestimmten Modul korrelieren, im Modulverzeichnis unter / files. Wenn eine Datei geändert wird, wird sie in SVN eingecheckt und über Hooks an den Master gesendet.
Zum Beispiel habe ich ein Modul, das Postfix verwaltet und die Dateien / etc / postfix / virtual an Clients weiterleitet. Diese Dateien werden unter / etc / puppet / modules / postfix / files gespeichert.
Dies gibt Ihnen den Vorteil, dass Sie in Ihren Modulen erstellten Code wiederverwenden und Dateien pro Modul organisieren können.
quelle