Материал просмотрен 962 раз(а)

Ух, насколько же интереснее администрировать собственный VPS, хоть и виртуальный. Сразу куча забот появляется, как распределить ресурсы, какие логи сохранять, какие действия предпринимать в случае сбоев. В общем аренда сервера – для настоящие сисадминов. Не будем всецело полагаться на хостера, займёмся мониторингом самостоятельно.

Все последние статьи категории Веб-сервер я посвящал тому, что переводил сайт на более стабильный и менее жадный nginx с последующей настройкой и оценкой прироста. Теперь же пришла пора, наконец, проверить, как расходуется память и другие ресурсы, чтобы в последующем можно было оценить прирост или упадок быстродействия и стабильности.

Я, честно говоря, не долго мучился с выбором системы мониторинга, нашел первую попавшуюся, удовлетворяющую не критичным требованиям, да успокоился.

Что было важно:

  • мониторинг использования памяти, процессора, файловых дескрипторов;
  • построение графиков за продолжительный период времени;
  • веб-интерфейс;
  • более-менее гибкая настройка;
  • нетребовательность к ресурсам;

На глаза попался проект Munin, который я решил поставить:

# aptitude install munin munin-node

Поставим и клиента и сервер. Вообще, собирать данные можно с разных серверов, что нам потом очень может пригодиться. Пока это просто неиспользуемая фича.

После установки топаем в конфиг:

# nano /etc/munin/munin.conf

Находим секцию локалхоста-локалдомейна, меняем на своё имя хоста (подсмотрел в /etc/hosts);

Так как у нас nginx, ему нужно прописать location:

location ~/www{
allow <наш IP-адрес>;
deny all;
root /var/cache/munin;
index index.html;
location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|swf|js|txt|xml)$ {
root /var/cache/munin;
access_log off;
}}

Теперь при открытии сайта с /www/index.html будет открываться веб-интерфейс с данными мониторинга:

 

Мониторинг сервера Debian

Мониторинг сервера Debian

Мониторинг сервера Debian

Мониторинг сервера Debian

И много других графиков. В принципе это неплохо, чтобы смотреть общую статистику загрузки. Ещё хорошо бы поставить на контроль несколько процессов, чтобы следить, когда в какие периоды образуется “пробка” по трафику и кто сильнее всего загружает процессор.

Прежде всего, модули php5-fpm и nginx с mysqld – хотелось бы построить диаграмму использования процессора и памяти так же по дням, неделям (и часам в днях), дабы поточнее оптимизировать, чтобы в часы пиковой загрузки не планировать ничего ресурсоёмкого кроном.