Könnten Puppet-Berichte entfernt werden, sobald diese von Puppet-Dashboard oder PuppetDB verarbeitet wurden?

11

Puppenberichte belegen viel Speicherplatz in:

/var/lib/puppet/reports
/var/lib/mysql

Es wird davon ausgegangen, dass alle Berichte in der MySQL-Datenbank gespeichert werden, da beide Pfade ungefähr gleich groß sind. Die Tabelle resource_statuses besteht aus Zeilen, die jeweils eine Zeile in einer Berichtsdatei darstellen.

  • Kann man die Berichte in / var / lib / puppet / reports sicher entfernen, nachdem Puppet-Dashboard oder PuppetDB sie verarbeitet haben?
  • Was ist die beste Vorgehensweise für den Umgang mit Berichten?
  • Gibt es eine Möglichkeit, das Puppet-Dashboard dazu zu bringen, die Yaml- Berichtsdateien nach der Verarbeitung automatisch zu löschen ?
ujjain
quelle

Antworten:

14

Ja, Sie können sie löschen und ich empfehle es auch. Die Dokumente für das Puppet-Dashboard sind nicht sehr einschätzend zur laufenden Wartung des Dashboards, müssen jedoch gewartet werden. Ich empfehle einen Cron, der Berichte in der Datenbank nach einigen Tagen löscht, einen zweiten, um verwaiste Datensätze zu entfernen, und einen dritten, um verarbeitete Berichte zu löschen. Meins sieht so aus:

cd /path/to dashboard ; RAILS_ENV=production rake reports:prune upto=3 unit=day
cd /path/to dashboard ; RAILS_ENV=production rake reports:prune:orphaned
find /var/lib/puppet/var/reports/ -mmin +300 -type f -print0 | xargs -0 -r rm > /dev/null 2>&1

Sie können die Zeiten so einstellen, dass sie für Ihr System am besten geeignet sind. Ich glaube nicht, dass der delay_job Funktionen zum Löschen verarbeiteter Berichte enthält, aber Sie können ihn möglicherweise zum Code hinzufügen.

kashani
quelle
Ich hoffe du benutzt eine Puppe, um die Cron aufzubauen ^^;
Felipe Alvarez