Тема: Не даём окончательно зависнуть серверу, узнаём о нагрузке сразу же

Часто бывает, что на сервере что-то зависает или увеличивается количество посетителей сайта, и нагрузка (load average) возрастает. Всё начинает сначало дико тормозить и работать частично, а потом сервер может и вовсе зависнуть.

Не во всех Дата-Центрах можно оперативно перезагрузить зависший сервер. Поэтому полезно проверять его нагрузку. Для Unix-систем пишем и размещаем на сервере такой скрипт на Perl:

#!/usr/bin/perl
$res=`uptime`;
@res_array=split(/ /,$res);
$res_array[$#res_array]=~s/[\r\n]//g;
print "Content-type: text/plain\n\n";
print $res_array[$#res_array];

Затем вы можете добавить задачу с типом проверки "HTTP(S) GET", в которой в качестве URL указываете адрес, где вы разместили скрипт, и в настройках задачи указываете: искать число в диапазоне от 0 до 5 (тут значение зависит от конкретного сервера). Если выдаваемое скриптом число выйдет из указанного диапазона, вам придёт уведомление от Ping-Admin.Ru, и вы сможете попытаться оперативно снизить нагрузку, например, убив зависшие процессы.

Все примеры скриптов на Perl и PHP для мониторинга внутренних ресурсов сервера.

2 (10.10.2012 13:02:07 отредактировано t128)

Re: Не даём окончательно зависнуть серверу, узнаём о нагрузке сразу же

PingAdmin.Ru пишет:

Если выдаваемое скриптом число выйдет из указанного диапазона, вам придёт уведомление от Ping-Admin.Ru, и вы сможете попытаться оперативно снизить нагрузку, например, убив зависшие процессы.

А с какой частотой выполнять эту проверку? (с загрузкой сервера всё ясно там раз в 5-10 мин. нормально будет) а вот с местом как? Раз в час? Но дисковое пространство так быстро не расходуется. Можно ли выставить для такой проверки, проверку раз в 6 часов?

Ой. Не туда написал. Это к этому.

3

Re: Не даём окончательно зависнуть серверу, узнаём о нагрузке сразу же

t128 пишет:

А с какой частотой выполнять эту проверку? (с загрузкой сервера всё ясно там раз в 5-10 мин. нормально будет) а вот с местом как? Раз в час? Но дисковое пространство так быстро не расходуется. Можно ли выставить для такой проверки, проверку раз в 6 часов?

Минимум раз в час можно проверять. Конкретные значения частоты проверки для всех индивидуальные (каждый выбирает сам) в зависимости от того, сколько места на диске и какова вероятность переполнения диска.

4

Re: Не даём окончательно зависнуть серверу, узнаём о нагрузке сразу же

PingAdmin.Ru пишет:

Минимум раз в час можно проверять. Конкретные значения частоты проверки для всех индивидуальные (каждый выбирает сам) в зависимости от того, сколько места на диске и какова вероятность переполнения диска.

Тогда по другому задам вопрос smile А можно сделать так что бы получать одно уведомление в сутки по дисковому пространству? Объясню. Мне бы хотелось получать раз в сутки информацию по остатку свободного пространства на ХДД. Просто каждый час это не очень нужно (дело даже не в деньгах). Нет ли варианта такого скрипта что бы пусть он хоть каждый час чекает, а уведомление приходит только раз в сутки. Вот так как то.

5

Re: Не даём окончательно зависнуть серверу, узнаём о нагрузке сразу же

Уведомление будет приходить только, когда на диске места станет меньше указанного значения, а не при каждой проверке.

6

Re: Не даём окончательно зависнуть серверу, узнаём о нагрузке сразу же

PingAdmin.Ru пишет:

Уведомление будет приходить только, когда на диске места станет меньше указанного значения, а не при каждой проверке.

Ёлки! Точно!))) (сразу не догнал функционал). Спасибо. Понял!)

7

Re: Не даём окончательно зависнуть серверу, узнаём о нагрузке сразу же

PingAdmin.Ru пишет:

Уведомление будет приходить только, когда на диске места станет меньше указанного значения, а не при каждой проверке.

Спасло! Было свободного места 2,4 осталось 0,7.  Пинг-админ - "пискнул" СМС. Пропустил.
А вот теперь позвонил. УРАА!!  СПАСИБО! )))

8

Re: Не даём окончательно зависнуть серверу, узнаём о нагрузке сразу же

t128 пишет:
PingAdmin.Ru пишет:

Уведомление будет приходить только, когда на диске места станет меньше указанного значения, а не при каждой проверке.

Спасло! Было свободного места 2,4 осталось 0,7.  Пинг-админ - "пискнул" СМС. Пропустил.
А вот теперь позвонил. УРАА!!  СПАСИБО! )))


Мужики, реальное спасибо!

Выделил под вас отдельный номер телефона. Это супер!