web-dev-qa-db-ja.com

Puppet-dashboardまたはPuppetDBによって処理された後、Puppet-reportsを削除できますか?

パペットレポートは次の場所で多くのディスクスペースを使用しています:

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

両方のパスのサイズがほぼ同じであるため、すべてのレポートがMySQLデータベースに格納されることが前提となっています。 resource_statusesテーブルは、それぞれがレポートファイルの行を表す行で構成されます。

  • Puppet-dashboardまたはPuppetDBがレポートを処理した後、/ var/lib/puppet/reportsのレポートを安全に削除できますか?
  • レポートを処理するためのベストプラクティスは何ですか?
  • Puppet-dashboardにyamlレポートファイルを処理後に自動的に削除させる方法はありますか?
11
ujjain

はい、あなたはそれらを削除することができ、私もそれをお勧めします。 Puppetダッシュボードのドキュメントは、ダッシュボードの継続的なメンテナンスについてはあまり考えられていませんが、メンテナンスが必要です。数日後にデータベース内のレポートを削除するcron、孤立したレコードを削除する2番目、処理されたレポートを削除する3番目のcronをお勧めします。鉱山は次のようになります。

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

システムに最適な時間に調整できます。 delay_jobに処理済みレポートを削除する機能が含まれているとは思いませんが、コードに追加できる場合があります。

14
kashani