一旦 Puppet-dashboard 或 PuppetDB 处理了 Puppet-reports,是否可以删除这些报告?

ujj*_*ain 11 disk-space-utilization puppet puppet-dashboard puppetdb

Puppet-reports 在以下位置使用了大量磁盘空间:

/var/lib/puppet/reports
/var/lib/mysql
Run Code Online (Sandbox Code Playgroud)

假设它将所有报告存储在 MySQL 数据库中,因为两个路径的大小大致相同。该resource_statuses表由行的每个代表在报告文件中的行。

  • 在 Puppet-dashboard 或 PuppetDB 处理完 /var/lib/puppet/reports 中的报告后,是否可以安全地删除它们?
  • 处理报告的最佳做法是什么?
  • 有没有办法让Puppet-dashboard 在处理完yaml报告文件后自动删除它们?

kas*_*ani 14

是的,你可以删除它们,我也推荐它。Puppet 仪表板的文档对仪表板的持续维护不是很固执,但它确实需要维护。我推荐一个 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
Run Code Online (Sandbox Code Playgroud)

您可以将时间调整为最适合您的系统的时间。我不相信 delay_job 包含删除已处理报告的任何功能,但您可以将其添加到代码中。