Prometheus - будущее систем мониторинга. Часть 0

Dec 15, 2016 14:36

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

Программа Prometheus была создана в 2012 и обещает быть очень перспективным айти решением. Эта система актуальна при обслуживании компьютерных систем в средних и крупных компаниях на аутсорсинге. Рассмотрим его поближе.
Особенности Prometheus
  • Темпоральная база данных
  • Гибкий язык запросов для работы с этой базой метрик
  • Основная модель получения данных - pullPush. Модель доступна при использовании внешнего gateway.
Архитектура Prometheus

Prometheus сервер - это всего лишь один из компонентов, выполняющий функцию сбора метрик от различных источников. Такими источниками могут быть, например:
  • Node Exporter, отвечающий за сбор метрик с физической машины (загрузка процессора, количество
  • свободной памяти, количество ошибок на Ethernet интерфейсе),
  • MySQLd Exporter, собирающий метрики с сервера MySQL и т.д.
  • С полным списком можно ознакомиться на официальном сайте.
Модель хранения данных

Данные в хранятся в темпоральном виде и это звучит непонятно. Все данные - это наборы так называемых time series - совокупность метрик и лэйблов, привязанных к временной шкале. Каждая метрика - это общий уникальный идентификатор того, что мы хотим наблюдать (например, cpu_load_average). Лэйбл - это пара key:value, идентифицирующая отдельный экземпляр метрики.

Что это значит? Я думаю проще всего понять на примере. Допустим, мы хотим отслеживать состояние загрузки процессора на трех серверах, тогда нам нужно создать три различных time series:
  • cpu_load_average{dc="sity1",hostname="server1"}
  • cpu_load_average{dc="sity2",hostname="server2"}
  • cpu_load_average{dc="sity3",hostname="server3"}


Для более детального ознакомления с Prometheus, предположим, что мы хотим мониторить состояние виртуального хостинга. Примерные шаги тогда будут такими:
  • Установка и запуск сервера
  • Установка и запуск Node Exporter
  • Настройка оповещений
  • Установка Grafana для более удобного графического представления информации

Продолжение статьи читайте в части 1.

систем, графана, prometheus, мониторниг, настройка, прометеус, обслуживание, система, компьютерных, код

Previous post Next post
Up