Come configurare il processo Monit sul pannello Vesta CP del sistema CentOS 7?

precedente aChen WeiangIl blog ha condivisoCentOS 6 Tutorial per installare e configurare Monit ▼

Tuttavia, nella configurazione di CentOS 7Monitorare il monitoraggioIl programma, con alcune differenze rispetto a CentOS 6, non è esattamente lo stesso.

se tuoLinuxL'host utilizza il sistema CentOS 7. Dopo aver installato Monit sul pannello Vesta CP, puoi seguire questo tutorial per configurare il programma di monitoraggio Monit.

Servizio di monitoraggio del processo di monitoraggio

Di seguito è riportato il contenuto della configurazione del servizio del processo di monitoraggio di Monit (eliminare alcuni servizi di monitoraggio meno utilizzati):

  • vongola
  • cron
  • colombaia
  • exim
  • httpd
  • memcached
  • mysql
  • nginx
  • spamassassin
  • sshd
  • vesta-nginx
  • vesta-php
  • vsftpd
  • Monitora lo spazio e gli inode attivi
  • Monitorare le risorse di sistema (RAM, swap, CPU, carico)

Monitorare la configurazione del monitoraggio

I nomi dei file di configurazione di Monit sono diversi per CentOS 6 e 7:

  • Il nome del file di configurazione Monit per CentOS 6 è "monit.conf"
  • Il nome del file di configurazione Monit per CentOS 7 è "monitrc"

con SFTP softwareDopo aver inserito il tuo server Linux, modifica il file di configurazione di Monit ▼

/etc/monitrc

Aggiungi il seguente contenuto di configurazione a questo file "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 timeout

Se hai modificato il contenuto della configurazione di MONIT, devi riavviare il servizio Monit per avere effetto▼

systemctl restart monit

Aggiornamento 2018 giugno 5:

  • Si consiglia di utilizzare il contenuto di configurazione sopra ▲
  • I seguenti comandi SSH non sono consigliati per generare file per il servizio di monitoraggio Monit.
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
  • Sostituisci con il tuo IP condiviso1.2.3.4.

Impossibile trovare il comando git bash perché potrebbe verificarsi un errore ▼

Potrebbe anche sembrare che dopo aver inserito questo comando ▼

sed -i 's/host localhost/host '$myip'/g' /etc/monit.d/*.conf

Viene visualizzato il seguente messaggio di errore ▼

sed: can't read /etc/monit.d/*.conf: No such file or directory

Errore di visualizzazione del registro di monitoraggio

SSH visualizza il comando del file di registro monit.log▼

tailf /var/log/monit.log
  • SSH per visualizzare il file monit.log, possono essere visualizzate solo le ultime 10 righe di log.

Si consiglia l'accesso SFTP /var/log/monit.log per visualizzare completamente lo stato del file di registro monit.log precedente.

Errore di invio e-mail

Se non è possibile inviare l'e-mail Monit, verrà visualizzato il seguente messaggio di errore ▼

error : Cannot open a connection to the mailserver localhost:25 -- Operation now in progress
error : Mail: Delivery failed -- no mail server is available

Correggi gli errori di invio delle email

Chen WeiangConsigliato da usareGmail SMTP▼

set mailserver smtp.gmail.com port 587
username "[email protected]"
password "password"
using tlsv1
with timeout 30 seconds

La soluzione è sostituire il server di posta impostato nel file di configurazione di Monit, per favore controlla questo tutorial per i dettagli ▼

errore della statistica del filesystem

Se trovi i seguenti errori nel file di registro monit.log ▼

filesystem statistic error: cannot read /proc/diskstats -- No such file or directory
  • Probabilmente perché Linux ha l'impostazione predefinita per l'installazione minima VestaCPpannello, non esiste /proc/diskstats File di monitoraggio dello stato del disco.

risolvere gli errori di statistica del filesystem

passo 1:SSH dentro /etc/monit.d catalogo ▼

cd /etc/monit.d

passo 2:Eliminare il file del servizio di monitoraggio di Monit "root-space.conf" ▼

rm -rf root-space.conf

passo 3:Riavvio SSH Monitoraggio monitoraggio ▼

systemctl restart monit.service

Comando di monitoraggio (speciale per CentOS 7)

Visualizza lo stato di avvio del monitoraggio ▼

systemctl status monit.service

Avvia il servizio di monitoraggio ▼

systemctl start monit.service

Chiudi il servizio Monitor▼

systemctl stop monit.service

Riavvia il servizio di monitoraggio ▼

systemctl restart monit

Avvia il servizio Monit all'avvio ▼

systemctl enable monit.service

Attiva e disattiva il servizio Monit ▼

systemctl disable monit.service

Speranza Chen Weiliang Blog ( https://www.chenweiliang.com/ ) ha condiviso "Come si configura il processo Monit sul pannello Vesta CP del sistema CentOS 7? , per aiutarti.

Benvenuti a condividere il link di questo articolo:https://www.chenweiliang.com/cwl-730.html

Benvenuto nel canale Telegram del blog di Chen Weiliang per ricevere gli ultimi aggiornamenti!

🔔 Sii il primo a ricevere la preziosa "Guida all'utilizzo dello strumento AI di marketing dei contenuti ChatGPT" nella directory principale del canale! 🌟
📚 Questa guida contiene un valore enorme, 🌟Questa è un'opportunità rara, non perderla! ⏰⌛💨
Condividi e metti mi piace se ti va!
La tua condivisione e i tuoi like sono la nostra continua motivazione!

 

发表 评论

L'indirizzo email non verrà pubblicato. 必填 项 已 用 * 标注

滚动 到 顶部