磁盘空间监控

磁盘空间监控

我正在寻找一种简单的方法,当服务器的磁盘空间超过 X % 或可用空间少于 X Mb 时,就会收到电子邮件警报。

我不需要任何特别的东西,我不需要图表或类似的东西,只需要一封电子邮件,让我知道我的服务器何时即将耗尽空间,以便我可以运行清理作业。现在我正在研究使用 Jenkins 设置清理作业,我只是需要一些东西来确保服务器继续运行。

这是用于 Ubuntu 服务器的。

答案1

我建议你认真看看监控.它是一个轻量级的本地监控工具。

用于监控根文件系统的配置看起来很简单。

check filesystem rootfs with path /
    if space usage > 80% then alert

全局monit配置看起来就像这样。

set daemon  180           # check services at 3-minute intervals
#     with start delay 240  # optional: delay the first check by 4-minutes
set logfile syslog facility log_daemon


set alert [email protected]
set mailserver mailserver.example.org

答案2

您可能可以在 roots crontab 中执行以下操作:

10 * * * * [ $(/bin/df --output=used /dev/diskid | /usr/bin/tail -1) -gt CHECKSIZE ] && /bin/mail -s "/dev/diskid 太大"[电子邮件保护]

此命令基本上会自动检查已使用的空间量,如果空间量较大,CHECKSIZE 将向您发送电子邮件。它只是简单地执行“df”来获取已使用的磁盘量。

但实际上,如果您要运行多个服务/服务器,您应该考虑 Nagios - 虽然设置起来有点麻烦,但它是一个很好的框架,可以随时检查所有内容,并且有很多免费插件。大多数知名公司都会运行它(或类似的东西)

相关内容