Tsab ntawv teev npe
ua ntejChen WeiliangBlog tau sib koomCentOS 6 Tutorial rau nruab thiab teeb tsa Monit ▼
Txawm li cas los xij, hauv CentOS 7 configurationSaib xyuasQhov kev zov me nyuam, nrog qee qhov sib txawv ntawm CentOS 6, tsis zoo ib yam.
yog kojLinuxTus tswv tsev siv CentOS 7 system. Tom qab txhim kho Monit ntawm Vesta CP vaj huam sib luag, koj tuaj yeem ua raws li cov lus qhia no los teeb tsa Monit saib xyuas.
Saib xyuas cov txheej txheem kev pabcuam
Cov hauv qab no yog cov kev pabcuam kev teeb tsa cov ntsiab lus ntawm Monit soj ntsuam cov txheej txheem (rho tawm qee qhov kev pabcuam saib xyuas tsawg dua):
-
clamd - cron
- dovecot
- tshem tawm
- httpd
-
memcached - mysql
- nginx
-
spamassassin - sshd
- vesta-nginx
- ua-php
- vsftpd
-
Saib xyuas qhov chaw thiab inodes rau -
Saib xyuas cov kev pab cuam (RAM, swap, CPU, load)
Saib xyuas kev teeb tsa
Monit configuration file names txawv rau CentOS 6 & 7:
- Lub npe ntawm Monit configuration file rau CentOS 6 yog "monit.conf"
- Lub npe ntawm Monit configuration file rau CentOS 7 yog "monitrc"
nrog SFTP SoftwareIb zaug hauv koj lub Linux server, hloov kho Monit configuration file ▼
/etc/monitrc
Ntxiv cov ntsiab lus hauv qab no rau cov ntaub ntawv "monitrc" ▼
##
## 陈沩亮博客示例monit配置文件说明:
## 1. 域名以 www.etufo.org 为例。
## 2. 后面带xxx的均是举例用的名字,需要根据自己的需要修改。
##
################################################## #############################
## Monit control file
################################################## #############################
#
# 检查周期,默认为2分钟,对于网站来说有点长,可以根据需要自行调节,这改成30秒。
set daemon 30
include /etc/monit.d/*
# 日志文件
set logfile /var/log/monit.log
#
# 邮件通知服务器
#
#set mailserver mail.example.com
set mailserver localhost with timeout 30 seconds
#
# 通知邮件的格式设置,下面是默认格式供参考
#
## Monit by default uses the following alert mail format:
##
## --8<--
## From: monit@$HOST # sender
## Subject: monit alert -- $EVENT $SERVICE # subject
##
## $EVENT Service $SERVICE #
## #
## Date: $DATE #
## Action: $ACTION #
## Host: $HOST # body
## Description: $DESCRIPTION #
## #
## Your faithful employee, #
## monit #
## --8<--
##
## You can override the alert message format or its parts such as subject
## or sender using the MAIL-FORMAT statement. Macros such as $DATE, etc.
## are expanded on runtime. For example to override the sender:
#
# 简单的,这只改了一下发送人,有需要可以自己修改其它内容。
set mail-format { from: admin@xxxx }
# 设置邮件通知接收者。建议发到gmail,方便邮件过滤。
set alert xxx@xxxx
set httpd port 2812 and #设置http监控页面的端口
use address www.etufo.org # http监控页面的IP或域名
##allow localhost # 允许本地访问
##allow 203.82.90.239 # 允许指定IP访问
allow user:password # 访问用户名密码
################################################## #############################
## Services
################################################## #############################
#
# 系统整体运行状况监控,默认的就可以,可以自己去微调
#
# 系统名称,可以是IP或域名
#check system www.etufo.org
# if loadavg (1min) > 4 then alert
# if loadavg (5min) > 2 then alert
# if memory usage > 75% then alert
# if cpu usage (user) > 70% then alert
# if cpu usage (system) > 30% then alert
# if cpu usage (wait) > 20% then alert
# 可选的ssl端口的监控,如果有的话
# if failed port 443 type tcpssl protocol http
# with timeout 15 seconds
# then restart
# 监控mariadb
check process mysql with pidfile /var/run/mariadb/mariadb.pid
start program = "/usr/bin/systemctl start mariadb"
stop program = "/usr/bin/systemctl stop mariadb"
if failed host 127.0.0.1 port 3306 for 2 cycles then restart
if 2 restarts within 4 cycles then timeout
# 监控httpd
check process httpd with pidfile /var/run/httpd/httpd.pid
start program = "/usr/bin/systemctl start httpd"
stop program = "/usr/bin/systemctl stop httpd"
# if children > 120 for 2 cycles then restart
# if failed host localhost port 8080 protocol http for 2 cycles then restart
# if 4 restarts within 10 cycles then timeout
# 监控nginx
check process nginx with pidfile /var/run/nginx.pid
start program = "/usr/bin/systemctl start nginx"
stop program = "/usr/bin/systemctl stop nginx"
# if failed host localhost port 443 protocol http for 2 cycles then restart
# if 4 restarts within 10 cycles then timeout
# 监控sshd
check process sshd with pidfile /var/run/sshd.pid
start program = "/usr/bin/systemctl start sshd"
stop program = "/usr/bin/systemctl stop sshd"
if failed host localhost port 22 protocol ssh for 2 cycles then restart
if 4 restarts within 10 cycles then timeout
# 监控vesta-nginx
check process vesta-nginx with pidfile /var/run/vesta-nginx.pid
start program = "/usr/bin/systemctl start vesta"
stop program = "/usr/bin/systemctl stop vesta"
if failed host localhost port 8083 protocol https for 2 cycles then restart
if 4 restarts within 10 cycles then timeout
# 监控vesta-php
check process vesta-php with pidfile /var/run/vesta-php.pid
start program = "/usr/bin/systemctl start vesta"
stop program = "/usr/bin/systemctl stop vesta"
if failed host localhost port 8083 protocol https for 2 cycles then restart
if 4 restarts within 10 cycles then timeout
# 监控vsftpd
check process vsftpd with match vsftpd
start program = "/usr/bin/systemctl start vsftpd"
stop program = "/usr/bin/systemctl stop vsftpd"
if failed host localhost port 21 protocol ftp for 2 cycles then restart
if 4 restarts within 10 cycles then timeout
#监控crond
check process crond with pidfile /var/run/crond.pid
start program = "/usr/bin/systemctl start crond"
stop program = "/usr/bin/systemctl stop crond"
if 5 restarts within 5 cycles then timeout
#监控dovecot
check process dovecot with pidfile /var/run/dovecot/master.pid
start program = "/usr/bin/systemctl start dovecot"
stop program = "/usr/bin/systemctl stop dovecot"
if failed host localhost port 143 protocol imap for 2 cycles then restart
if 4 restarts within 10 cycles then timeout
#监控exim
check process exim with pidfile /var/run/exim.pid
start program "/usr/bin/systemctl start exim"
stop program "/usr/bin/systemctl stop exim"
if failed host localhost port 25 protocol smtp for 2 cycles then restart
if 4 restarts within 10 cycles then timeoutYog tias koj tau hloov kho MONIT teeb tsa cov ntsiab lus, koj yuav tsum rov pib qhov kev pabcuam Monit kom muaj txiaj ntsig▼
systemctl restart monit
Hloov tshiab 2018/5/26:
- Nws raug nquahu kom siv cov ntsiab lus teeb tsa saum toj no ▲
- Cov lus txib SSH nram qab no tsis pom zoo los tsim cov ntaub ntawv rau Monit saib xyuas.
cd /etc/monit.d/
git clone https://github.com/infinitnet/vesta-centos7-monit.git ./ && rm -f README.md
myip=1.2.3.4
sed -i 's/host localhost/host '$myip'/g' /etc/monit.d/*.conf
systemctl restart monit- Hloov nrog koj tus IP sib koom1.2.3.4.
Tsis tuaj yeem nrhiav git bash hais kom ua vim qhov yuam kev yuav tshwm sim ▼
Nws kuj tseem yuav tshwm sim tias tom qab nkag mus rau cov lus txib no ▼
sed -i 's/host localhost/host '$myip'/g' /etc/monit.d/*.conf
Cov lus yuam kev hauv qab no tshwm ▼
sed: can't read /etc/monit.d/*.conf: No such file or directory
Monit log saib yuam kev
SSH saib monit.log log file command ▼
tailf /var/log/monit.log
- SSH saib cov ntaub ntawv monit.log, tsuas yog 10 kab kawg ntawm cov cav tuaj yeem tso tawm.
SFTP tus ID nkag mus yog pom zoo /var/log/monit.log kom pom tag nrho cov xwm txheej ntawm cov ntaub ntawv monit.log yav dhau los.
Kev xa email yuam kev
Yog tias Monit mail xa tsis tau, cov lus yuam kev hauv qab no yuav tshwm sim ▼
error : Cannot open a connection to the mailserver localhost:25 -- Operation now in progress error : Mail: Delivery failed -- no mail server is available
Txhim kho email xa yuam kev
Chen WeiliangPom zoo sivGmail SMTP ▼
set mailserver smtp.gmail.com port 587 username "[email protected]" password "password" using tlsv1 with timeout 30 seconds
Txoj kev daws teeb meem yog los hloov lub teeb mailserver hauv Monit configuration file, thov saib cov lus qhia no kom paub meej ▼
filesystem statistic yuam kev
Yog tias koj pom cov teeb meem hauv qab no hauv monit.log log file ▼
filesystem statistic error: cannot read /proc/diskstats -- No such file or directory
- Tej zaum vim Linux defaults rau qhov tsawg kawg nkaus installation VestaCPvaj huam sib luag, tsis muaj nyob
/proc/diskstatsDisk xwm txheej saib xyuas cov ntaub ntawv.
daws cov ntaub ntawv txheeb xyuas qhov yuam kev
Kauj ruam 1:SSH hauv /etc/monit.d catalog ▼
cd /etc/monit.d
Kauj ruam 2:Tshem tawm Monit saib xyuas cov ntaub ntawv "root-space.conf" ▼
rm -rf root-space.conf
Kauj ruam 3:SSH rov pib Monit saib ▼
systemctl restart monit.service
Monit Command (Tshwj xeeb rau CentOS 7)
Saib Monit startup status ▼
systemctl status monit.service
Pib qhov kev pabcuam Monit ▼
systemctl start monit.service
Kaw qhov kev pabcuam Monit ▼
systemctl stop monit.service
Rov pib qhov kev pabcuam Monit ▼
systemctl restart monit
Pib qhov kev pabcuam Monit ntawm khau raj ▼
systemctl enable monit.service
Qhib thiab kaw qhov kev pabcuam Monit ▼
systemctl disable monit.service
Cia siab Chen Weiliang Blog ( https://www.chenweiliang.com/ ) qhia "Yuav ua li cas teeb tsa cov txheej txheem Monit ntawm Vesta CP vaj huam sib luag ntawm CentOS 7 system? , pab koj.
Zoo siab txais tos los qhia qhov txuas ntawm kab lus no:https://www.chenweiliang.com/cwl-730.html
Txhawm rau qhib ntau qhov kev zais zais 🔑, txais tos tuaj koom nrog peb Telegram channel!
Share thiab like yog tias koj nyiam! Koj qhov kev sib koom thiab kev nyiam yog peb lub zog txuas ntxiv!
