如何在Linux上安装和配置Monit

时间:2019-05-19 01:26:32  来源:igfitidea点击:

Monit是一个小型的进程和服务监视开源工具,用于监视和管理Unix之类的系统。
Monit监控服务器程序,以增加服务正常运行时间,并确保他们始终在线。
本文将在CentOS、RHEL、Fedora、Ubuntu、Dabian和Scientific Linux上安装和配置Monit。
Monit有监控系统上运行的任何服务的能力,我们只需要添加设置。
在本文中,我们将只展示少数服务的配置。

步骤1 -安装Monit

Monit可以很容易地在大多数Linux风格的包管理器中安装。
对于CentOS/RHEL用户,需要在安装之前在他的系统中启用epel存储库。

CentOS, RHEL和Scientific Linux

# yum install monit

Fedora 22 +

# dnf install monit

Debian和Ubuntu

$ sudo apt-get install monit

Arch Linux

$ pacman -S monit

第2步-启用Monit网络界面

(对于CLI爱好者可选)Monit还提供了一个web界面来查看服务和进程状态。
要启用monit web界面,请编辑基于 /etc/monit.conf的配置文件。
或者 /etc/monit/monitrc(Debian系统) ),

取消下面行的注释

set httpd port 2812 and
    use address localhost
    allow localhost
    allow admin:monit
    allow @monit
    allow @users readonly

并启动monit服务。

# service monit start

Starting monit: monit: generated unique Monit id 0dbd9dc3f0aa7ed7df9e7a069aea9b84 and stored to '/root/.monit.id'  [  OK  ]

按照上面的配置,monit将在端口 2812上启动,并且只能从本地主机访问。
要更改默认端口,只需更新上面显示配置的第一行并设置首选端口。

使用浏览器访问Monit web界面

http://服务器ip:2812

步骤3 -监控Apache与Monit服务

让我们从在Monit中添加服务开始,以监视它们并在满足条件时采取必要的行动。
我们添加的第一个服务是Apache。
编辑你的monit配置文件,并在文件的末尾添加以下设置

在 CentOS, RHEL: /etc/monit.conf

check process apache with pidfile /var/run/httpd.pid
    start program = "/etc/init.d/httpd start" with timeout 60 seconds
    stop program  = "/etc/init.d/httpd stop"

在 Dabian/Ubuntu: /etc/monit/monitrc

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"

现在重新启动monit服务并检查状态。

# service monit restart 

# monit summary

The Monit daemon 5.1.1 uptime: 2m

Process 'apache'                    running
System 'svr1.theitroad.com'          running

第4步-配置Monit来监控MySQL/MariaDB

让我们在Monit配置文件中添加MySQL服务器来监控它。
PID文件位置和init脚本可能会根据我们安装的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"

第5步-验证配置和测试

在monit监视配置文件中添加所需的服务后,使用下面的命令来验证文件的语法

# monit -t

现在重新启动monit服务

# service monit restart

现在查看Monit对监控流程和服务的总结。

# monit summary

The Monit daemon 5.1.1 uptime: 0m

Process 'apache'                    running
Process 'mysqld'                    running
System 'svr1.theitroad.com'          running

要查看每个服务的详细信息,请使用以下命令

# monit status

我们还可以在Monit web界面上显示进程和服务的状态