Como configurar o processo Monit no painel Vesta CP do sistema CentOS 7?

antes deChen WeiliangO blog compartilhouCentOS 6 Tutorial para instalar e configurar o Monit ▼

No entanto, na configuração do CentOS 7Monitoramento de monitoramentoO programa, com algumas diferenças do CentOS 6, não é exatamente o mesmo.

se seuLinuxO host usa o sistema CentOS 7. Após instalar o Monit no painel Vesta CP, você pode seguir este tutorial para configurar o programa de monitoramento Monit.

Monitorar serviço de processo de monitoramento

A seguir está o conteúdo de configuração do serviço do processo de monitoramento Monit (exclua alguns serviços de monitoramento menos usados):

  • clamar
  • cron
  • dovecot
  • exim
  • httpd
  • memcached
  • mysql
  • nginx
  • spamassassin
  • sshd
  • Vesta-nginx
  • Vesta-php
  • vsftpd
  • Monitore o espaço e os inodes em
  • Monitore os recursos do sistema (RAM, swap, CPU, carga)

Monitorar configuração de monitoramento

Os nomes dos arquivos de configuração do Monit são diferentes para CentOS 6 e 7:

  • O nome do arquivo de configuração do Monit para CentOS 6 é "monit.conf"
  • O nome do arquivo de configuração Monit para CentOS 7 é "monitrc"

com SFTP 软件Após entrar no seu servidor Linux, edite o arquivo de configuração do Monit ▼

/etc/monitrc

Adicione o seguinte conteúdo de configuração a este arquivo "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 você modificou o conteúdo de configuração do MONIT, você precisa reiniciar o serviço do Monit para entrar em vigor▼

systemctl restart monit

Atualização 2018/5/26:

  • Recomenda-se usar o conteúdo de configuração acima ▲
  • Os comandos SSH a seguir não são recomendados para gerar arquivos para o serviço de monitoramento 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
  • Substitua pelo seu IP compartilhado1.2.3.4.

Não foi possível encontrar o comando git bash porque pode ocorrer um erro ▼

Também pode parecer que depois de inserir este comando ▼

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

A seguinte mensagem de erro aparece ▼

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

Monitorar erro de visualização de log

SSH view monit.log comando do arquivo de log▼

tailf /var/log/monit.log
  • SSH para visualizar o arquivo monit.log, somente as últimas 10 linhas de logs podem ser exibidas.

O login SFTP é recomendado /var/log/monit.log para visualizar completamente o status do arquivo de log monit.log anterior.

Erro de envio de e-mail

Se o Monit mail não puder ser enviado, a seguinte mensagem de erro aparecerá ▼

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

Corrigir erros de envio de e-mail

Chen WeiliangRecomenda-se usarGmail SMTP ▼

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

A solução é substituir o servidor de e-mail definido no arquivo de configuração do Monit, consulte este tutorial para obter detalhes ▼

erro de estatística do sistema de arquivos

Se você encontrar os seguintes erros no arquivo de log monit.log ▼

filesystem statistic error: cannot read /proc/diskstats -- No such file or directory
  • Provavelmente porque o Linux padroniza a instalação mínima VestaCPpainel, não existe /proc/diskstats Arquivo de monitoramento de status do disco.

resolver erros de estatística do sistema de arquivos

passo 1:SSH em /etc/monit.d catálogo ▼

cd /etc/monit.d

passo 2:Exclua o arquivo do serviço de monitoramento Monit "root-space.conf" ▼

rm -rf root-space.conf

passo 3:Reinicialização SSH Monitorar monitoramento ▼

systemctl restart monit.service

Comando Monit (especial para CentOS 7)

Visualize o status de inicialização do Monit ▼

systemctl status monit.service

Inicie o serviço Monit ▼

systemctl start monit.service

Feche o serviço Monit▼

systemctl stop monit.service

Reinicie o serviço Monit ▼

systemctl restart monit

Inicie o serviço Monit na inicialização ▼

systemctl enable monit.service

Ligue e desligue o serviço Monit ▼

systemctl disable monit.service

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) compartilhou "Como configurar o processo Monit no painel Vesta CP do sistema CentOS 7? , para ajudá-lo.

Bem-vindo a compartilhar o link deste artigo:https://www.chenweiliang.com/cwl-730.html

Bem-vindo ao canal Telegram do blog de Chen Weiliang para receber as últimas atualizações!

🔔 Seja o primeiro a obter o valioso "Guia de uso da ferramenta de IA de marketing de conteúdo ChatGPT" no diretório superior do canal! 🌟
📚 Este guia contém um valor enorme, 🌟Esta é uma oportunidade rara, não perca! ⏰⌛💨
Compartilhe e curta se gostar!
Seus compartilhamentos e curtidas são nossa motivação contínua!

 

发表 评论

Seu endereço de e-mail não será publicado. 必填 项 已 用 * 标注

滚动 到 顶部