ລາຍການຫົວເລື່ອງ
ກ່ອນChen Weiliangບລັອກໄດ້ແບ່ງປັນCentOS 6 Tutorial ການຕິດຕັ້ງ ແລະ configure Monit ▼
ຢ່າງໃດກໍຕາມ, ໃນການຕັ້ງຄ່າ CentOS 7ຕິດຕາມກວດກາໂປຣແກຣມ, ມີຄວາມແຕກຕ່າງບາງຢ່າງຈາກ CentOS 6, ບໍ່ຄືກັນ.
ຖ້າທ່ານLinuxເຈົ້າພາບໃຊ້ລະບົບ CentOS 7. ຫຼັງຈາກຕິດຕັ້ງ Monit ຢູ່ໃນແຜງ Vesta CP, ທ່ານສາມາດປະຕິບັດຕາມຄໍາແນະນໍານີ້ເພື່ອກໍານົດໂຄງການ Monit.
ຕິດຕາມກວດກາການບໍລິການຂະບວນການຕິດຕາມກວດກາ
ຕໍ່ໄປນີ້ແມ່ນເນື້ອໃນການຕັ້ງຄ່າການບໍລິການຂອງຂະບວນການຕິດຕາມກວດກາ Monit (ລຶບບາງບໍລິການຕິດຕາມກວດກາທີ່ຖືກນໍາໃຊ້ຫນ້ອຍ):
-
clamd - cron
- ນົກເຂົາ
- exim
- httpd
-
memcached - mysql
- nginx
-
ຜູ້ຂ້າ spam - ssh
- vesta-nginx
- vesta-php
- vsftpd
-
ຈໍພາບຊ່ອງ ແລະອິນໂນດເປີດຢູ່ -
ຕິດຕາມກວດກາຊັບພະຍາກອນຂອງລະບົບ (RAM, swap, CPU, ໂຫຼດ)
ຕິດຕາມກວດກາການຕັ້ງຄ່າ
ຊື່ໄຟລ໌ການຕັ້ງຄ່າ Monit ແມ່ນແຕກຕ່າງກັນສໍາລັບ CentOS 6 & 7:
- ຊື່ຂອງໄຟລ໌ການຕັ້ງຄ່າ Monit ສໍາລັບ CentOS 6 ແມ່ນ "monit.conf"
- ຊື່ຂອງໄຟລ໌ການຕັ້ງຄ່າ Monit ສໍາລັບ CentOS 7 ແມ່ນ "monitrc"
ກັບ SFTP ຊອບແວເມື່ອຢູ່ໃນເຊີບເວີ Linux ຂອງທ່ານ, ແກ້ໄຂໄຟລ໌ການຕັ້ງຄ່າ Monit ▼
/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:
- ຂໍແນະນຳໃຫ້ໃຊ້ເນື້ອໃນການຕັ້ງຄ່າຂ້າງເທິງ ▲
- ຄໍາສັ່ງ SSH ຕໍ່ໄປນີ້ບໍ່ໄດ້ຖືກແນະນໍາໃຫ້ສ້າງໄຟລ໌ສໍາລັບການບໍລິການຕິດຕາມກວດກາ 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- ແທນທີ່ດ້ວຍ IP ທີ່ແບ່ງປັນຂອງທ່ານ1.2.3.4.
ບໍ່ສາມາດຊອກຫາຄໍາສັ່ງ git bash ເພາະວ່າຄວາມຜິດພາດອາດຈະເກີດຂື້ນ ▼
ມັນຍັງອາດຈະປາກົດວ່າຫຼັງຈາກໃສ່ຄໍາສັ່ງນີ້ ▼
sed -i 's/host localhost/host '$myip'/g' /etc/monit.d/*.conf
ຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດຕໍ່ໄປນີ້ປາກົດ ▼
sed: can't read /etc/monit.d/*.conf: No such file or directory
ການກວດສອບບັນທຶກຄວາມຜິດພາດ
ຄໍາສັ່ງໄຟລ໌ບັນທຶກ SSH ເບິ່ງ monit.log ▼
tailf /var/log/monit.log
- SSH ເພື່ອເບິ່ງໄຟລ໌ monit.log, ພຽງແຕ່ 10 ແຖວສຸດທ້າຍຂອງບັນທຶກສາມາດສະແດງໄດ້.
ແນະນຳການເຂົ້າສູ່ລະບົບ SFTP /var/log/monit.log ເພື່ອເບິ່ງສະຖານະຂອງໄຟລ໌ບັນທຶກ monit.log ທີ່ຜ່ານມາ.
ການສົ່ງອີເມວຜິດພາດ
ຖ້າ Monit mail ບໍ່ສາມາດສົ່ງໄດ້, ຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດຕໍ່ໄປນີ້ຈະປາກົດ ▼
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, ກະລຸນາເບິ່ງບົດແນະນໍານີ້ສໍາລັບລາຍລະອຽດ ▼
ສະຖິຕິລະບົບໄຟລ໌ຜິດພາດ
ຖ້າເຈົ້າພົບຂໍ້ຜິດພາດຕໍ່ໄປນີ້ຢູ່ໃນໄຟລ໌ບັນທຶກ monit.log ▼
filesystem statistic error: cannot read /proc/diskstats -- No such file or directory
- ອາດຈະເປັນຍ້ອນ Linux ເລີ່ມຕົ້ນການຕິດຕັ້ງຫນ້ອຍທີ່ສຸດ VestaCPກະດານ, ບໍ່ມີ
/proc/diskstatsໄຟລ໌ຕິດຕາມກວດກາສະຖານະຂອງແຜ່ນ.
ແກ້ໄຂຂໍ້ຜິດພາດທາງສະຖິຕິຂອງລະບົບໄຟລ໌
ຂັ້ນຕອນທີ 1:SSH ໃນ /etc/monit.d ລາຍການ ▼
cd /etc/monit.d
ຂັ້ນຕອນທີ 2:ລຶບໄຟລ໌ບໍລິການຕິດຕາມກວດກາ Monit "root-space.conf" ▼
rm -rf root-space.conf
ຂັ້ນຕອນທີ 3:SSH restart Monit monitoring ▼
systemctl restart monit.service
Monit Command (ພິເສດສໍາລັບ CentOS 7)
ເບິ່ງສະຖານະ Monit startup ▼
systemctl status monit.service
ເລີ່ມການບໍລິການ Monit ▼
systemctl start monit.service
ປິດບໍລິການ Monit ▼
systemctl stop monit.service
ຣີສະຕາດບໍລິການ Monit ▼
systemctl restart monit
ເລີ່ມການບໍລິການ Monit ຢູ່ທີ່ boot ▼
systemctl enable monit.service
ເປີດ ແລະປິດບໍລິການ Monit ▼
systemctl disable monit.service
ຫວັງ Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "ວິທີການຕັ້ງຄ່າຂະບວນການ Monit ໃນແຜງ Vesta CP ຂອງລະບົບ CentOS 7? , ເພື່ອຊ່ວຍເຈົ້າ.
ຍິນດີຕ້ອນຮັບແບ່ງປັນການເຊື່ອມຕໍ່ຂອງບົດຄວາມນີ້:https://www.chenweiliang.com/cwl-730.html
ເພື່ອປົດລັອກເຄັດລັບທີ່ເຊື່ອງໄວ້ເພີ່ມເຕີມ🔑, ຍິນດີຕ້ອນຮັບເຂົ້າສູ່ຊ່ອງ Telegram ຂອງພວກເຮົາ!
Share and like ຖ້າທ່ານມັກມັນ! ການແບ່ງປັນ ແລະຖືກໃຈຂອງເຈົ້າເປັນແຮງຈູງໃຈຢ່າງຕໍ່ເນື່ອງຂອງພວກເຮົາ!
