База знаний: Linux Server
Скрипт мониторинга нагрузки на сервер , работы сервисов Apache и Mysql
Автор Алексей | HiTex.BY, Последнее изменение: Алексей | HiTex.BY на 04 февраля 2014 13:28
Возникают ситуации когда HTTP или MySql сервер "пададют" при работе или же увеличивается нагрузка , в результате до момента вашей рекации сайт не будет доступен пользователям.

Набор данных скриптов поможет справиться с неприятной ситуацией:
-------------------------------------------------------------------
Файл: http-restart.sh
-------------------------------------------------------------------

#!/bin/bash
if ps ax | grep /usr/sbin/apache2 | grep -vq grep
then
echo "apache already running"
else echo "starting apache"

/etc/init.d/apache2 start

fi


-------------------------------------------------------------------
Файл: mysql-restart.sh
-------------------------------------------------------------------

#!/bin/bash
if ps ax | grep /usr/bin/mysql | grep -vq grep
then
echo "mysql already running"
else echo "starting mysql"

/etc/init.d/mysql start

fi


-------------------------------------------------------------------
 Файл: service-restart.sh
-------------------------------------------------------------------

# Получаем текущее значение LA
LOAD=`uptime | grep -o 'load average.*' | cut -c 15-18`

# Если оно больше указанного ниже значения, то это также повод для беспокойства
if [ $LOAD \> 5.0 ]; then
echo "ВНИМАНИЕ!!! Слишком большая нагрузка!"
echo "-- Текущий Load Average: $LOAD "
/etc/init.d/mysql restart && /etc/init.d/apache2 restart
else
echo "-- Текущий Load Average: $LOAD "
fi

-------------------------------------------------------------------
Данные скрипты нужно добавить в CRON с выполнением раз в 5-10 минут, по вашему усмотрению.
(1212 голос(а))
Эта статья полезна
Эта статья бесполезна

Комментарии (0)