Воскресенье, 22.09.2024
focusbook.moy.su
Меню сайта
Форма входа
09:44

Скрипт мониторинг серверов скачать

Скрипт мониторинг серверов

Скрипт мониторинг серверов.
В этой части скрипты мы объявим все константы, которые будем использовать во всех остальных составляющих скрипта. #/bin/bash # массив e-mail-адресов, на который отправлять сообщение о проблемах report_to=(admin@newagelab.com admin@newagelab.vn.ua) sendmail=" /usr/sbin/sendmail " backup_hours=32 host=`/bin/hostname` nginx_status_host="web2.newagelab.com" # отправляем уведомления с адреса monitor@hostname сервера report_from=monitor@$host #изначально считаем что в системе все нормально и письмо errors=0 df_report=90 top_report=5 mailfile="/tmp/services-check-`date +%F`.mail" p #зачищаем старые файлы (более 30 минут) и предотвращаем повторный запуск скрипта find /tmp/services-check-* -type f -mmin +30 -exec rm <> \; if [ -f $pidfile]; then exit; fi echo `date`>$pidfile echo "Это письмо создано автоматически сервисом мониторинга нагрузки от компании newagelab.com\n">$mailfile. Добавить комментарий: Мониторинг свободного места на диске. Задача: определить предел заполненности дисков, по которому сигнализировать администратору об проблемах.

df -H | grep -vE '^Filesystem|tmpfs|cdrom' | awk ' ' | while read output; do usep=$(echo $output | awk ' ' | cut -d'%' -f1 ) partition=$(echo $output | awk ' ' ) if [ $usep -ge $df_report ]; then errors=$((errors+1)) echo "\nПартишн $partition занят на $usep% на $(date)">>$mailfile fi done. Добавить комментарий: Мониторинг нагрузки. Задача стоит следующая: определить границу нагрузки, после которой сигнализировать ответственным лицам. И при возможности постараться выяснить какие процессы создают нагрузку. mytop=`uptime | grep -o 'load average.*' | cut -c 15-18` if [ $mytop -ge $top_report ]; then echo "==== ВНИМАНИЕ ====\nНагрузка на сервер выше нормы: $mytop">>$mailfile topprocs=`ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10` echo "\nНагружают процессор: $topprocs\n===================\n">>$mailfile // проверка списка выполняемых запросов апачем echo "\nApache\n===================\n">>$mailfile lynx -dump http://127.0.0.1/server-status>>$mailfile // проверка списка выполняемых запросов php-fpm echo "\nPHP-FPM\n===================\n">>$mailfile top -i -n 1 -b | grep -w php-fpm>>$mailfile // проверка списка выполняемых запросов nginx echo "\nNginx info\n===================\n">>$mailfile lynx -dump http://$nginx_status_host/nginx_status>>$mailfile // проверка списка выполняемых запросов mysql // проверка количества сообщений в mailq fi. Добавить комментарий: Миниторинг запущены ли необходимые сервисы.

Цель: произвести проверку запущены или нет необходимые нам сервисы. # Первым делом, составляем список процессов, которые мы будем мониторить daemons=( crond memcached nginx php-fpm sshd proftpd posix ) scripts=( "/etc/init.d/crond start" "/etc/init.d/memcached start" "/etc/init.d/nginx start" "/etc/init.d/php-fpm start" "/etc/init.d/sshd start" "/etc/init.d/proftpd start" "/etc/init.d/posix start" ) # получаем длину массива dlen=$ # организовываем цикл по массиву daemons for (( i=0; i >$mailfile if [ $ -ne "" ]; then `$ ` checkrez=`ps -A|grep $ |wc -l` if [ $checkrez -eq 0 ]; then echo "ВНИМАНИЕ. $ не смогли перезапустить! Требуется ручное вмешательство\n===================\n">>$mailfile else echo "$mailbody\nНо $ успешно запустили заново.n===================\n">>$mailfile fi fi fi done.



Скрипт мониторинг серверов

Скрипт мониторинг серверов



Похожие материалы:
Поиск
Календарь
«  Октябрь 2019  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
28293031
Архив записей
focusbook.moy.su © 2024 Карта сайта
uCoz