Article Directory
чейинЧен ВейлянБлог бөлүштүCentOS 6 Монитти орнотуу жана конфигурациялоо боюнча окуу куралы ▼
Бирок, CentOS 7 конфигурациясындаМониторингCentOS 6дан айрым айырмачылыктары бар программа так эле окшош эмес.
Эгер сенинLinuxХост CentOS 7 системасын колдонот. Vesta CP панелине Monitти орноткондон кийин, Monit мониторинг программасын конфигурациялоо үчүн бул окуу куралын аткарсаңыз болот.
Мониторинг процессинин кызматы
Мониторинг процессинин кызмат конфигурациясынын мазмуну төмөндө келтирилген (айрым азыраак колдонулган мониторинг кызматтарын жок кылуу):
-
clamd - cron
- көгүчкөн
- эксим
- httpd
-
memcached - MySQL
- жөргөмүш
-
спамассассин - sshd
- vesta-nginx
- vesta-php
- vsftpd
-
Монитор мейкиндигин жана иноддорду күйгүзүңүз -
Системанын ресурстарын көзөмөлдөө (RAM, алмашуу, CPU, жүктөө)
Мониторинг конфигурациясын
Monit конфигурациясынын файл аттары CentOS 6 жана 7 үчүн ар түрдүү:
- CentOS 6 үчүн Monit конфигурация файлынын аты "monit.conf"
- CentOS 7 үчүн Monit конфигурация файлынын аты "monitrc"
SFTP менен 软件Linux сервериңизге киргенден кийин, Монит конфигурация файлын түзөтүңүз ▼
/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 конфигурациясынын мазмунун өзгөрткөн болсоңуз, күчүнө кириши үчүн Монит кызматын кайра күйгүзүшүңүз керек▼
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
Төмөнкү ката кабары пайда болот ▼
sed: can't read /etc/monit.d/*.conf: No such file or directory
Монитор журналын көрүү катасы
SSH көрүү monit.log журнал файлынын буйругу▼
tailf /var/log/monit.log
- monit.log файлын көрүү үчүн SSH, журналдардын акыркы 10 саптары гана көрсөтүлүшү мүмкүн.
SFTP кирүү сунушталат /var/log/monit.log
мурунку monit.log журнал файлынын абалын толугу менен көрүү үчүн.
Электрондук кат жөнөтүүдө ката
Эгерде Monit катын жөнөтүү мүмкүн болбосо, анда төмөнкү ката кабары пайда болот ▼
error : Cannot open a connection to the mailserver localhost:25 -- Operation now in progress error : Mail: Delivery failed -- no mail server is available
Электрондук почтаны жөнөтүү каталарын оңдоо
Чен ВейлянКолдонуу сунушталды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 in /etc/monit.d
каталог ▼
cd /etc/monit.d
2 кадам:Мониторинг кызматынын "root-space.conf" файлын жок кылыңыз ▼
rm -rf root-space.conf
3 кадам:SSH кайра баштоо Мониторингди ▼
systemctl restart monit.service
Monit Command (CentOS 7 үчүн атайын)
Монитти баштоо статусун көрүү ▼
systemctl status monit.service
Монит кызматын иштетиңиз ▼
systemctl start monit.service
Монит кызматын жабуу▼
systemctl stop monit.service
Монит кызматын кайра иштетиңиз ▼
systemctl restart monit
Жүктөөдө Монит кызматын баштаңыз ▼
systemctl enable monit.service
Монит кызматын күйгүзүңүз жана өчүрүңүз ▼
systemctl disable monit.service
Hope Chen Weiliang блогу ( https://www.chenweiliang.com/ ) бөлүштү "CentOS 7 системасынын Vesta CP панелинде Монит процессин кантип конфигурациялоо керек? , сага жардам берүү үчүн.
Бул макаланын шилтемесин бөлүшүүгө кош келиңиз:https://www.chenweiliang.com/cwl-730.html
Акыркы жаңылыктарды алуу үчүн Чен Вейляндын блогунун Telegram каналына кош келиңиз!
📚 Бул колдонмо чоң баалуулуктарды камтыйт, 🌟Бул сейрек кездешүүчү мүмкүнчүлүк, аны өткөрүп жибербеңиз! ⏰⌛💨
Бөлүшүп, жакса лайк!
Сиздин бөлүшүүңүз жана лайктарыңыз биздин үзгүлтүксүз мотивациябыз!