CentOS 7 စနစ်၏ Vesta CP panel တွင် Monit လုပ်ငန်းစဉ်ကို မည်သို့ configure လုပ်ရမည်နည်း။

မတိုင်မီကChen Weiliangဘလော့မှာ မျှဝေထားပါတယ်။CentOS 6 Monit ▼ ထည့်သွင်းရန်နှင့် စီစဉ်သတ်မှတ်ရန် ကျူတိုရီရယ်

သို့သော် CentOS 7 configuration တွင်စောင့်ကြည့်စောင့်ကြည့်ပရိုဂရမ်သည် CentOS 6 နှင့် အချို့သော ခြားနားချက်များနှင့် အတိအကျတူညီခြင်းမရှိပါ။

မင်းLinux ကိုအိမ်ရှင်သည် CentOS 7 စနစ်ကို အသုံးပြုသည်။ Monit ကို Vesta CP အကန့်တွင် ထည့်သွင်းပြီးနောက်၊ Monit စောင့်ကြည့်ရေးပရိုဂရမ်ကို ပုံစံသတ်မှတ်ရန် ဤသင်ခန်းစာကို လိုက်နာနိုင်ပါသည်။

စောင့်ကြည့်ကြီးကြပ်ရေး လုပ်ငန်းစဉ်

အောက်ဖော်ပြပါသည် Monit စောင့်ကြည့်ရေးလုပ်ငန်းစဉ်၏ ဝန်ဆောင်မှုပုံစံဖွဲ့စည်းပုံအကြောင်းအရာ (အချို့သော အသုံးနည်းသော စောင့်ကြည့်ရေးဝန်ဆောင်မှုများကို ဖျက်ပါ)။

  • clamd
  • cron
  • ခို
  • စာမေးပွဲ
  • httpd
  • memcache
  • mysql
  • nginx
  • စပိန်
  • ssh
  • vesta-nginx
  • vesta-php
  • vsftpd
  • space နှင့် inodes ကိုဖွင့်ပါ။
  • စနစ်အရင်းအမြစ်များကို စောင့်ကြည့်ပါ (RAM၊ လဲလှယ်မှု၊ CPU၊ ဝန်)

စောင့်ကြည့်ကြီးကြပ်ဖွဲ့စည်းမှု

Monit configuration ဖိုင်အမည်များသည် CentOS 6 နှင့် 7 အတွက် ကွဲပြားသည်-

  • CentOS 6 အတွက် Monit configuration file ၏အမည်မှာ "monit.conf" ဖြစ်သည်။
  • CentOS 7 အတွက် Monit configuration file ၏အမည်မှာ "monitrc" ဖြစ်သည်။

SFTP နှင့် Software များသင်၏ Linux ဆာဗာတွင် ပြီးသည်နှင့် Monit configuration file ▼ ကို တည်းဖြတ်ပါ။

/etc/monitrc

အောက်ပါဖွဲ့စည်းပုံအကြောင်းအရာကို ဤ "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

MONIT ဖွဲ့စည်းမှုပုံစံ အကြောင်းအရာကို သင်မွမ်းမံပြီးပါက၊ အသက်ဝင်စေရန် Monit ဝန်ဆောင်မှုကို ပြန်လည်စတင်ရန် လိုအပ်သည်▼

systemctl restart monit

မေလ 2018 ရက်၊ 5 အပ်ဒိတ်-

  • အထက်ဖော်ပြပါ အကြောင်းအရာ ▲ ကို အသုံးပြုရန် အကြံပြုပါသည်။
  • Monit စောင့်ကြည့်ရေးဝန်ဆောင်မှုအတွက် ဖိုင်များထုတ်လုပ်ရန် အောက်ပါ SSH ညွှန်ကြားချက်များကို အကြံပြုမထားပါ။
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
  • သင်၏မျှဝေထားသော IP ဖြင့် အစားထိုးပါ။1.2.3.4

▼ အမှားဖြစ်သွားနိုင်သောကြောင့် git bash အမိန့်ကို ရှာမတွေ့ပါ။

ဤအမိန့်ကို ထည့်သွင်းပြီးနောက် ▼ ပေါ်လာနိုင်သည်။

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

အောက်ပါ Error message သည် ▼ ပေါ်လာပါသည်။

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

မှတ်တမ်းကြည့်ရှုမှု အမှားကို စောင့်ကြည့်ပါ။

SSH view monit.log မှတ်တမ်းဖိုင် command▼

tailf /var/log/monit.log
  • monit.log ဖိုင်ကိုကြည့်ရှုရန် SSH၊ နောက်ဆုံးမှတ်တမ်း 10 လိုင်းကိုသာ ပြသနိုင်သည်။

SFTP အကောင့်ဝင်ရန် အကြံပြုထားသည်။ /var/log/monit.log ယခင် monit.log မှတ်တမ်းဖိုင်၏ အခြေအနေကို အပြည့်အဝကြည့်ရှုရန်။

အီးမေးလ်ပို့ရာတွင် အမှားအယွင်းရှိသည်။

Monit mail ကို မပို့နိုင်ပါက အောက်ပါ error message ▼ ပေါ်လာပါမည်။

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

အီးမေးလ်ပို့ခြင်းအမှားများကိုပြင်ပါ။

Chen Weiliangအသုံးပြုရန်အကြံပြုပါသည်Gmail ကို SMTP ▼

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

ဖြေရှင်းချက်မှာ Monit configuration file ရှိ set mailserver ကို အစားထိုးရန်၊ အသေးစိတ်အတွက် ဤသင်ခန်းစာကို ကြည့်ပါ ▼

ဖိုင်စနစ် စာရင်းအင်း အမှား

monit.log မှတ်တမ်းဖိုင် ▼ တွင် အောက်ပါ အမှားအယွင်းများကို တွေ့ရှိပါက

filesystem statistic error: cannot read /proc/diskstats -- No such file or directory
  • Linux သည် တပ်ဆင်မှု အနည်းငယ်သာရှိသောကြောင့် ဖြစ်နိုင်ပါသည်။ VestaCPpanel မရှိပါ။ /proc/diskstats ဒစ်ခ်အခြေအနေစောင့်ကြည့်ရေးဖိုင်။

ဖိုင်စနစ်စာရင်းအင်းအမှားများကိုဖြေရှင်းပါ။

အဆင့် 1-SSH ထဲဝင်ပါ။ /etc/monit.d ကက်တလောက် ▼

cd /etc/monit.d

အဆင့် 2-Monit စောင့်ကြည့်ရေးဝန်ဆောင်မှုဖိုင် "root-space.conf" ▼ ကိုဖျက်ပါ။

rm -rf root-space.conf

အဆင့် 3-Monit monitoring ▼ SSH ကို ပြန်လည်စတင်ပါ။

systemctl restart monit.service

Monit Command (CentOS 7 အတွက် အထူး)

Monit စတင်မှုအခြေအနေ ▼ ကြည့်ပါ။

systemctl status monit.service

Monit ဝန်ဆောင်မှု ▼ စတင်ပါ။

systemctl start monit.service

Monit ဝန်ဆောင်မှု▼ ကို ပိတ်ပါ။

systemctl stop monit.service

Monit ဝန်ဆောင်မှု ▼ ကို ပြန်လည်စတင်ပါ။

systemctl restart monit

Boot ▼ တွင် Monit ဝန်ဆောင်မှုကို စတင်ပါ။

systemctl enable monit.service

Monit ဝန်ဆောင်မှု ▼ အဖွင့်အပိတ်လုပ်ပါ။

systemctl disable monit.service

မျှော်လင့်ခြင်း Chen Weiliang ဘလော့ဂ် ( https://www.chenweiliang.com/ ) မျှဝေထားသည် "CentOS 7 စနစ်၏ Vesta CP panel တွင် Monit လုပ်ငန်းစဉ်ကို မည်သို့ပြင်ဆင်မည်နည်း။ , သင့်ကိုကူညီရန်။

ဤဆောင်းပါး၏ link ကိုမျှဝေရန်ကြိုဆိုပါတယ်:https://www.chenweiliang.com/cwl-730.html

နောက်ဆုံးထွက်မွမ်းမံမှုများကို ရယူရန် Chen Weiliang ၏ တယ်လီဂရမ်ချန်နယ်မှ ကြိုဆိုပါသည်။

🔔 ချန်နယ်ထိပ်တန်းလမ်းညွှန်တွင် တန်ဖိုးရှိသော "ChatGPT အကြောင်းအရာစျေးကွက်ရှာဖွေရေး AI ကိရိယာအသုံးပြုမှုလမ်းညွှန်" ကို ပထမဆုံးရရှိသူဖြစ်လိုက်ပါ။ 🌟
📚 ဤလမ်းညွှန်တွင် တန်ဖိုးကြီးကြီးမားမားပါရှိသည်၊ 🌟ဒါက ရှားပါးအခွင့်အရေးပါ၊ လက်လွတ်မခံပါနဲ့။ ⏰⌛💨
ကြိုက်ရင် Share ပြီး Like လုပ်ပါ။
သင်၏မျှဝေခြင်းနှင့် လိုက်ခ်များသည် ကျွန်ုပ်တို့၏ စဉ်ဆက်မပြတ်လှုံ့ဆော်မှုဖြစ်သည်။

 

မှတ်ချက်များ

သင့်ရဲ့အီးမေးလ်လိပ်စာကိုထုတ်ဝေမည်မဟုတ် 用项已用用 * တံဆိပ်

အပေါ်မှလှိမ့်