Monit监控软件安装与配置教程
Monit是一款开源的轻量级系统监测软件,适用于Unix/Linux、BSD、macOS等平台,主要用于监控和管理进程、程序、文件、目录和设备运行状态。其通过配置文件实现自动化维护,支持服务异常时自动重启、发送邮件告警,并内置HTTPWeb界面便于远程管理。1、安装
可以使用yum进行安装yum -y install monit,当然,你也可以使用源码进行安装。下载导url如下:https://mmonit.com/monit/dist/binary/
2、monit配置
monit的配置一般情况下分为两个地方,分别是/etc/monit.conf和/etc/monit.d/*.conf,其中,/etc/monit.conf配置全局的监控规则,而/etc/monit.d/*.conf配置单个进程的检查项。二者通过include的方法来进行关联,如下:
cat /etc/monit.conf
monit.conf文件中最后行如下:
# Include all files from /etc/monit.d/
include /etc/monit.d/*.conf可以看到,在/etc/monit.conf的最后,是使用include的方法将/etc/monit.d/*.conf给包含进来的,而*.conf文件一般是我们配置的一个一个的监控项,例如sys.conf,disk.conf,mem.conf,cpu.conf等等,分别用来监控系统状态、磁盘状态、内存、CPU等,当然,可以将它们写在一起,除此之外,如果你启动了一个服务server,那么可以进行一个配置server.conf,将server这个进程监控起来,一旦由于某种原因,该进程被kill掉了,monit可以将它重新拉起来,起到保护进程的作用。
配置的具体内容:
首先我们来看/etc/monit.conf中的内容:
# Check the time interval (second)
set daemon ###监控间隔时间,单位是秒
with start delay ###在monit进程启动10s之后才进行监控
set logfile /var/log/monit.log ###默认的监控日志
set idfile /var/monit/.monit.id ###设置监控唯一id的文件位置
set statefile /var/monit/.monit.state ###默认存储每个周期内monitorining状态的文件
set mailserver XXXXXXXXXport XXX ###默认的主邮件服务器和端口
username "XXXXXXXXX" password "XXXXXXXXX" ###邮箱的账号和密码
with timeoutseconds ###默认的超时时间
set eventqueue ###当邮件因为某种原因不可用的时候,会暂存在这里
basedir /var/monit### set the base directory where events will be stored,也就是邮件的存放地址
slots ### optionally limit the queue size,限制邮件队列的大小
set mail-format { ###设置邮件的格式
from: XXXX@XXXXXX ###邮件来源
subject: $HOST's $SERVICE $ACTION | $DESCRIPTION
message:
Date: $DATE
Action: $ACTION
Host: $HOST
Description:
Host $HOST's [$SERVICE] $DESCRIPTION
$EVENT Service $SERVICE
$DESCRIPTION
}
set httpd portand ###设置web监控,用于web界面,由于使用MMonit的界面管理,也可以不配置
allow localhost
allow user:password
# Include all files from /etc/monit.d/
include /etc/monit.d/*.conf
再来看看/etc/monit.d/*.conf中的内容吧:
#test
check process test matching "/tmp/test.sh"
group root
start program = "/bin/sh /tmp/test.sh"
alert yeyz@XXXXX.cn only on {nonexist}如上配置,是指实时查找该进程,如果进程不存在的时候,会进行邮件告警。
当然,可以使用restart的命令,重新拉起该服务。
3、常用命令
最后列举一些常用的命令
monit -t # 配置文件检测
monit # 启动monit daemon
monit reload # 当更新了配置文件需要重载
monit status # 查看所有服务状态
monit status consul # 查看consul服务状态
monit stop all # 停止所有服务
monit start all # 启动所有服务
monit start consul#启动服务
monit -V # 查看版本关于monit的命令,还有很多,想要详细了解,可以查看monit的官方文档,地址:
https://mmonit.com/monit/documentation/monit.html#SERVICE-GROUPS
感谢您的阅读,服务器大本营-技术文章内容集合站,助您成为更专业的服务器管理员!
页:
[1]
![点击直接加入[服务器大本营QQ频道]](https://www.fwqdby.com/data/attachment/common/cf/163843sqpktkbsqklllbt6.jpg)