使用M/Monit进行可视化集中进程管
一:前言
Monit是一个开源监控管理工具(类似supervisor),能够监控linux系统的负载、文件、进程等。当系统负载过高、监控文件被篡改、进程异常退出时,能够发送邮件报警,并能够自动启动或关闭异常进程。Monit内嵌web界面,能够看到当前主机上的监控项状态。
M/Monit是一个集中式管理多台Monit的可视化工具,也是收费工具,可以免费试用30天。
二:规划
M/Monit(集中管理) 192.168.0.1
Monit(监控机) 192.168.0.2
Monit(监控机) 192.168.0.3
三:安装M/Monit
(1)安装M/Monit
$cd /opt
$wget https://mmonit.com/dist/mmonit-3.5.1-linux-x64.tar.gz
$tar xf mmonit-3.5.1-linux-x64.tar.gz
$cd mmonit-3.5.1
(2)配置M/Monit
1:MMonit的配置文件是conf/server.xml,不需要任何改动即可使用,默认配置是8080端口。
<Connector address="*" port="8080" processors="10" />
2:MMonit默认使用的是包内自带的sqlite3数据库,默认配置如下
<Realm url="sqlite:///db/mmonit.db?synchronous=normal&heap_limit=8000&foreign_keys=on&journal_mode=wal"
minConnections="5"
maxConnections="25"
reapConnections="300" />
也可以改成mysql和postgresql数据库.以myqsl为例(使用默认的sqlite可以跳过):
修改sqlite配置为
<Realm url="mysql://mmonit:[email protected]/mmonit"
minConnections="5"
maxConnections="25"
reapConnections="300" />
并导入mysql数据库
$mysql -ummonit -ppasswd < /opt/mmonit-3.5.1/db/mmonit-schema.mysql
(3)启动M/Monit
$bin/mmonit -c conf/server.xml
(4)启动M/Monit
访问 192.168.0.1:8080,显示登录页。
默认用户名
user | password | 权限 |
admin | swordfish | 管理员 |
monit | monit | 普通用户 |
登录进去后,里面是空白的,No hosts,这是因为monit还没有加入进来,下面配置monit
四:安装配置monit
(1)安装Monit
192.168.0.2 192.168.0.3
$cd /opt
$wget https://mmonit.com/monit/dist/binary/5.19.0/monit-5.19.0-linux-x64.tar.gz
$tar xf monit-5.19.0-linux-x64.tar.gz
$cd monit-5.19.0
(3)启动monit
$bin/monit -c conf/monitrc
(4)访问MMonit,192.168.0.1:8080
已经能够看到192.168.0.2和192.168.0.3两台机器。
点进去机器,可以看到该机器的监控项,包括系统监控、进程监控、文件系统、配置文件监控。
大功告成!!!!!
此时,你可以去机器上试一试,手动kill掉nginx进程,你会发现进程会自动被拉起。
下面放两张我使用监控ELK集群的图,机器多一点。