Для контроля стабильной работы сайтов на VDS владелец рано или поздно приходит к выводу о необходимости мониторинга В своем блоге ранее я освещал возможные варианты на базе copperegg.com. Сервис наращивал функционал и в одни из дней пришло уведомление, что через 30 дней демо аккаунт будет заблокирован.
Отличный вариант уведомления по смс о не доступности сайта предоставляет metrika.yandex.ru. Время проверки доступность сайта от яндекса от 10 до 120 минут и предположительно зависит от популярности сайта. Для сокращения интервала можно добавит несколько доменов (а лучше все, что доступны на размещаемом сервере).
Локализация причин сбоя требует данных. Для сбора данных о системе есть несколько способов.
- atop - консольная утилита сбора статистики для linux системы - есть проблема для openvz виртуализации
- сторонний мониторинг https://www.datadoghq.com/
- Своя система мониторинга
Анализ системы с atop
Горячие клавиши для сортировки.
d — по использованию диска;
n — по использованию сети (доступно только с установленным патчем);
i — изменение периода времени проверки (по умолчанию 10 секунд);
m — по занятой памяти;
v — показать более подробную информацию о процессах;
g — вернуть настройки по умолчанию.
Сторонний мониторинг www.datadoghq.com
Отличный вариант для поддержки до 5 серверов.
Из коробки работают базовые системные метрики, для большинства систем есть агенты и быстрый скрипт установки вида.
Своя система статистики и уведомления об отклонениях
Один из вариантов современных инструментов можно построить на базе influxdata platform
Система строится из компонентов (кирпичиков) отвечающих за определенную зону функционала
InfluxDB - База данных временных рядов. последняя версия переписана на модном и современном языке golang
Telegraf - Агент так же написанный на go собирающий и отправляющий метрики на центральный сервер
kapacitor - процессор обработки данных на базе InfluxDB позволяющий добавлять свою логику для отправки оповещений
Chronograf - Интерфейс для построения графиков из базы метрик InfluxDB
Каждый из компонентов имеет схожие аналоги и позволяет интегрироваться с другими компонентами. Так например база InfluxDB может быть заменена на Graphite а Telegraf на Collectd