关于 Monit
Monit 是一个有用的程序,可以自动监控和管理服务器程序,以确保它们不仅保持在线,而且文件大小、校验和权限始终正确。此外,Monit 还带有一个基本的 Web 界面,通过该界面可以设置所有的进程。本教程将介绍最基本的设置和配置。
安装 Monit
通过 apt-get 安装 Monit 最为简单:
sudo apt-get install monit
安装完成后,可以将程序和进程添加到配置文件中:
sudo nano /etc/monit/monitrc
可以使用命令启动 Monit,并使其在后台运行:
monit
输入 monit status
命令显示 Monit 的详细信息:
The Monit daemon 5.3.2 uptime: 1h 25m System 'myhost.mydomain.tld' status Running monitoring status Monitored load average [0.03] [0.14] [0.20] cpu 3.5%us 5.9%sy 0.0%wa memory usage 26100 kB [10.4%] swap usage 0 kB [0.0%] data collected Thu, 30 Aug 2012 18:35:00
配置 Monit
Monit 几乎可以直接使用。默认情况下,它被设置为每 2 分钟检查一次服务是否运行,并将日志文件存储在 “/var/log/monit.log” 中。
这些设置可以在配置文件开头的 set daemon
和 set logfile
行中进行更改。
Web 服务
Monit 自带一个运行在 2812 端口的 Web 服务器。要配置 Web 界面,找到并取消注释以 set httpd port 2812
开头的部分。取消注释后,写入服务器的 IP 或域名作为地址,允许任何人连接,然后创建一个 Monit 用户和密码。
set httpd port 2812 use address 12.34.56.789 # 只接受来自本地的连接 allow 0.0.0.0/0.0.0.0 # 允许本地主机连接到服务器 allow admin:monit # 要求用户 'admin' 和密码 'monit'
配置完成后,Monit 应该重新加载和重新读取配置文件,Web 界面将可用:
monit reload
然后,您可以通过访问 “example.com:2812” 来访问 Monit Web 界面。
使用您选择的用户名和密码登录。您的屏幕应该看起来像这样。
配置程序自我监控
设置了 Web 服务后,可以开始将要监视和保护的程序输入到 “/etc/monit/monitrc” 配置文件中。要简单地确保程序保持在线,可以使用 /etc/init.d 命令来停止或启动程序。
以下是一些示例配置:
Apache:
check process apache with pidfile /run/apache2.pid start program = "/etc/init.d/apache2 start" with timeout 60 seconds stop program = "/etc/init.d/apache2 stop"
MySQL:
check process mysqld with pidfile /var/run/mysqld/mysqld.pid start program = "/etc/init.d/mysql start" stop program = "/etc/init.d/mysql stop"
Nginx:
check process nginx with pidfile /var/run/nginx.pid start program = "/etc/init.d/nginx start" stop program = "/etc/init.d/nginx stop"
完成
一旦配置了要运行的所有程序,它们将被自动跟踪,并在关闭时重新启动。
您可以通过 Web 界面或命令行控制这些程序。
配置完成后,检查语法:
monit -t
解决可能的语法错误后,可以开始运行所有被监视的程序。
monit start all