Просто о сложном

Что такое мониторинг и с чем его едят?

Мониторинг - это контроль состояния инфраструктуры и систем, необходимый для  обеспечения стабильной работы сервисов. Информация о работоспособности и производительности системы дает возможность не только своевременно реагировать на проблемы, но и уверенно “починять примус” :). Достигается такая слаженность за счет трех  составляющих: сбор метрик, визуализация данных и оповещение (при некорректной работе) администраторов и пользователей.

То есть, метрики и оповещения - взаимосвязанные понятия. Первые - отражают состояние систем, помогают выявить тенденции в потреблении ресурсов или поведении пользователей и оценить влияние вносимых изменений. А если показатели выходят за требуемые границы, то Система в автоматическом режиме уведомляет об этом админа для своевременного выявления и устранения возможных причин сбоев.

Метрики – это неформатированные данные, которые можно отслеживать и собирать. Например, доступное дисковое пространство, загрузка процессора, использование свопа, и т. д. Кроме того, многие веб-серверы, серверы баз данных, бизнес-приложения и т.п. также имеют свои собственные метрики, которые можно собрать.

Таким образом, метрики представляют данные о вашей системе, а мониторинг – это процесс сбора, агрегирования и анализа этих данных для улучшения понимания характеристик и поведения компонентов системы.

Системы мониторинга выполняют множество взаимосвязанных функций. 

На первом месте - сбор и хранение актуальных и исторических данных. Как правило полезно видеть данные в сравнении с прошлыми значениями, чтобы сформировать контекст изменений и тенденций. 

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

Третьей функцией является организация, сравнение и анализ данных из различных источников. Например, если в приложении произошло несколько ошибок, администратор должен иметь возможность узнать причину этих ошибок (в частности, обнаружить недостаточность выделенных вычислительных ресурсов и т.п.).

Система оповещения выполняет действия, реагируя на изменения метрических значений. В ее основе две компоненты: условия (или пороги), основанные на метриках, и действия, которое нужно выполнить при выходе значений за пороговые. Основная цель оповещений – привлечение внимания к возможному или состоявшемуся сбою в системе. Предупреждение должно содержать информацию о том, что пошло не так и где найти дополнительную информацию о проблеме и способах ее устранения. 

Что же влияет на выбор метрик?

В идеале необходимо отслеживать все данные, связанные с вашими системами. Однако это не всегда реализуемо, а иногда даже нежелательно.

Необходимо учитывать:

Ресурсы, доступные для отслеживания (зависят от численности и квалификации персонала, инфраструктуры и выделенного бюджета).

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

Среда развертывания. Традиционно мониторят системы, находящиеся в эксплуатации. Однако, присматривать за процессами разработки и тестирования будет не лишним, хотя детализация и количество метрик могут отличаться.

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

Таким образом, факторы, влияющие на решение, что мониторить, какие метрики использовать и пр. будут зависеть от доступных ресурсов, зрелости организации и SLA.

О конкретных инструментах мониторинга поговорим в следующей серии :)




Group 36 Group 36 Group 16 ic_8 ic_9