Каталог артыкулаў
У гэтым уроку мы пакажам вам, як усталяваць маніторынг Monit на CentOS Webpanel (CWP7) на CentOS 7.
Што такое маніторынг Monit?
Monit — гэта бясплатнае праграмнае забеспячэнне з адкрытым зыходным кодам , і гэта вельмі карысная праграма маніторынгу Linux .
- Ён можа аўтаматычна кантраляваць і кіраваць сервернымі працэсамі, файламі, каталогамі, дазволамі кантрольнай сумы, файлавымі сістэмамі і службамі ў UNIX/Linux.
- Напрыклад: Apache, Nginx,MySQL, FTP, SSH, Postfix і г.д.
- Сістэмнае кіраванне сістэмай, якое забяспечвае выдатныя магчымасці маніторынгу для сістэмных адміністратараў.
Навошта ўсталёўваць маніторынг Monit?
Вы можаце выкарыстоўваць маніторынг Monit, каб скараціць час прастою, што можа быць карысным для SEO і інтэрнэт-маркетынгу вэб- сайтаў электроннай камерцыі .
Таму што, калі якая-небудзь служба не працуе, Monit правярае яе і аўтаматычна запускае службу.
Напрыклад: калі ваша служба Apache або Nginx не працуе без прычыны, то monit праверыць, і калі будзе ўстаноўлена, што яна не працуе, то monit аўтаматычна запусціць адпаведную службу.
Адна цікавая рэч: monit запускае ўласную службу httpd.
Калі ваша служба apache не працуе, monit будзе працаваць са сваёй уласнай службай.
Як усталяваць і ўсталяваць праграмнае забеспячэнне для маніторынгу Monit у CWP 7?
Каб выканаць гэты падручнік, вам спатрэбяцца наступныя перадумовы:
- CentOS Linux версіі 7 (ядро)
- CWP7
- Брандмаўэр CSF
Крок 1: абнавіце свой рэпазітар YUM па SSH, а затым усталюйце маніторынг Monit ▼
yum update -y
yum install monitКрок 2:Адкрыйце порт 2812 на брандмаўэры CSF ▼
vi /etc/csf/csf.conf # Allow incoming TCP ports TCP_IN = "20,21,22,2812,25,53,80,110,143,443,465,587,993,995,2030,2031,2082,2083,2086,2087,2095,2096"
Крок 3: перазапусціце CSF Firewall▼
csf -r Крок 4:з SFTP软件Пасля ўваходу на сервер Linux адрэдагуйце файл канфігурацыі Monit/etc/monitrc▼
set daemon 30 # check services at 30 seconds intervals
set log syslog
set pidfile /var/run/monit.pid
set idfile /var/.monit.id
set statefile /var/.monit.state
include /etc/monit.d/*
set mailserver localhost port 25
set eventqueue
basedir /var/monit # set the base directory where events will be stored
slots 100 # optionally limit the queue size
set alert admin@xxxxx #receive all alerts
set alert admin@xxxxx not on { instance, action }
set httpd port 2812 and use address 0.0.0.0
allow 0.0.0.0/0.0.0.0
allow admin:monit # require user 'admin' with password 'monit'Крок 5: Праверце сінтаксіс Monit на наяўнасць памылак ▼
# monit -t Control file syntax OK
Калі іх няма, стварыце наступныя файлы:
# touch /var/run/monit.pid # touch /var/log/moinit.log
Калі ўсталяваны Redis , вам можа спатрэбіцца ўручную наладзіць месцазнаходжанне PID-файла Redis. ▼
Monit дадае службу маніторынгу
Цяпер мы будзем сачыць за некаторымі службамі, напрыкладamavisd, clamd, crond, php-fpm і cwpsrv.Адкрыйце файл канфігурацыі monit/etc/monitrc, і дадайце наступны код у канцы радка:
Манітор CWP.amavisd
# vi /etc/monitrc
check process amavisd with pidfile /var/run/amavisd/amavisd.pid
start program "/usr/bin/systemctl start amavisd.service"
stop program "/usr/bin/systemctl stop amavisd.service"
if failed unixsocket /var/run/amavisd/amavisd.sock then restart
if cpu > 70% for 4 cycles then alert
if cpu > 90% for 8 cycles then restart
if 4 restarts within 8 cycles then timeoutМанітор CWP.clamd
# vi /etc/monitrc
check process clamd with pidfile /var/run/clamd.amavisd/clamd.pid
start program "/usr/bin/systemctl start clamd.service"
stop program "/usr/bin/systemctl stop clamd.service"
if failed unixsocket /var/run/clamd.amavisd/clamd.sock then restart
if cpu > 70% for 4 cycles then alert
if cpu > 90% for 8 cycles then restart
if 4 restarts within 8 cycles then timeout Манітор CWP.crond
# vi /etc/monitrc
check process crond with pidfile /var/run/crond.pid
start program = "/usr/bin/systemctl start crond.service"
stop program = "/usr/bin/systemctl stop crond.service" Манітор CWP.cwp-phpfpm
# vi /etc/monitrc
check process cwp-phpfpm matching "cwp-phpfpm"
start program "/usr/bin/systemctl start cwp-phpfpm.service"
stop program "/usr/bin/systemctl stop cwp-phpfpm.service"
if failed unixsocket /usr/local/cwp/php71/var/sockets/cwpsrv.sock then restart
if failed unixsocket /usr/local/cwp/php71/var/sockets/cwpsvc.sock then restart
if failed unixsocket /usr/local/cwp/php71/var/sockets/login.sock then restart
if cpu > 70% for 4 cycles then alert
if cpu > 90% for 8 cycles then restart
if 4 restarts within 8 cycles then timeout манітор cwp.cwpsrv
# vi /etc/monitrc
check process cwpsrv with pidfile /usr/local/cwpsrv/var/run/nginx.pid
start program "/usr/bin/systemctl start cwpsrv.service"
stop program "/usr/bin/systemctl stop cwpsrv.service"
if 4 restarts within 8 cycles then timeout Пасля канфігурацыі monit павінен перазагрузіць і перачытаць файл канфігурацыі, і вэб-інтэрфейс будзе даступны:
monit reloadІнструкцыі па запытах PID-файла працэсу базы дадзеных MySQL глядзіце ў падручніку ніжэй ▼
Служба маніторынгу Monitіншы спосаб (рэкамендуецца)
1) Спампуйце файл службы маніторынгу Monit▼
- На старонцы загрузкі націсніце кнопку «Загрузіць зараз» у звычайнай загрузцы, каб бясплатна загрузіць файл службы маніторынгу Monit.
- (Код доступу: 5588)
2) Распакуйце і загрузіце ў каталог /etc/monit.d/.
- Калі ўФайл канфігурацыі monit У /etc/monitrc ёсць служба маніторынгу з такой жа канфігурацыяй, якая павінна быць在Файл канфігурацыі monit /etc/monitrc будзе выдалены, у адваротным выпадку адбудзецца памылка.
Пасля стварэння неабходных канфігурацыйных файлаў праверце сінтаксічныя памылкі▼
monit -t
Калі з'явіцца наступнае запыт ▼
monit -t /etc/monit.d/cwp.mariadbd:1: Service name conflict, mysql already defined '"/usr/sbin/mariadbd"'
- Гэта азначае, што
/etc/monit.d/cwp.mariadbd:1:Канфлікт назваў службы; mysql ужо вызначаны'"/usr/sbin/mariadbd"' - вось апісанне
cwp.mariadbdФайл ужо існуе, проста выдаліце ягоcwp.mysqldфайл.
Калі памылак няма, уключыце і перазапусціце службу monit ▼
systemctl enable monit systemctl restart monit
Запусціце службу Monit пры загрузцы ▼
systemctl enable monit.service
Цяпер праверце журнал маніторынгу ▼
tail -f /var/log/monit.logМаніторынг асноўных каманд
Запусціце monit з дапамогай наступнай каманды ▼
monit
Праверце стан Monit ▼
monit status
Перазагрузіце яго, каб змены ўступілі ў сілу▼
monit reload
Пачніце запускаць усе праграмы, якія кантралюе Monit▼
monit start all
Перазапусціце ўсе службы паветранага назірання Monit▼
monit restart all
Каб запусціць, спыніць і перазапусціць пэўныя службы, вы можаце выкарыстоўвацьmonit start nameТакая каманда ▼
monit start httpd
monit stop sshd
monit restart nginxРэзюмэ маніторынгу Monit▼
monit summary

Цяпер увайдзіце на сервер monit, выкарыстоўваючы імя карыстальніка і пароль Monit, якія вы задалі раней.
URL для ўваходу:http://SERVER_FQDN:2812
Вырашыце праблему з тым, што служба Monit заўсёды не кантралюецца
Monit уключае каманды для ўключэння і выключэння маніторынгу ўсіх або пэўных службаў.
Калі служба Monit заўсёды не кантралюецца, вы можаце выкарыстоўваць наступную каманду▼
monit monitor mysql
Або зноў уключыце ўвесь кантроль▼
monit monitor all
- Звярніце ўвагу, што для працы гэтых каманд неабходна ўключыць HTTP-інтэрфейс Monit.
Каманда Monit (спецыяльна для CentOS 7)
Прагляд статусу запуску Monit▼
systemctl status monit.service
Запусціце службу Monit▼
systemctl start monit.service
Зачыніце службу Monit▼
systemctl stop monit.service
Перазапусціце службу Monit▼
systemctl restart monit
Запусціце службу Monit пры загрузцы▼
systemctl enable monit.service
Уключыце і выключыце службу Monit▼
systemctl disable monit.service
Нататкі Monit
Monit кантралюе службы працэсаў, што азначае, што службы, якія кантралюе Monit, нельга спыніць звычайнымі метадамі, таму што пасля спынення Monit запускае іх зноў.
Каб спыніць службу, якую кантралюе Monit, вы павінны выкарыстоўваць нешта накшталтmonit stop nameТакая каманда, напрыклад, каб спыніць nginx ▼
monit stop nginx
Каб спыніць усе службы, якія кантралююцца Monit, увядзіце наступную каманду▼
monit stop all
Выдаліце праграму маніторынгу Monit ▼
yum remove monit
Спадзяюся, артыкул «Як усталяваць праграмнае забеспячэнне для маніторынгу Monit на CentOS Webpanel (CWP7)?», апублікаваны ў блогу Чэня Вэйляна ( https://www.chenweiliang.com/ ), будзе вам карысным.
Не саромейцеся падзяліцца спасылкай на гэты артыкул: https://www.chenweiliang.com/cwl-1443.html

