Коллеги, приветствую!
Прошу помочь в поиске решения.
Работаю в крупной компании с некоторым количеством сервисов и встала задача наладить мониторинг с точки зрения бизнеса.
В данный момент у нас, вероятно, как и у многих, мониторятся конкретные сервера/контейнеры/приложения и все это разрозненно вываливается на дашборды в виде графиков и сработавших триггеров, а хотелось бы иметь некий дашборд со списком конечных сервисов и их суммарным состоянием.
Поясню. Допустим, у нас имеются сайт компании, некое веб приложение для пользователей и тестовая среда для разработчиков.
Структура сервисов примерно такая:
Сайт компании
|_ веб-серверы
|_ триггеры по железу (например, смарт дисков, линк на сетевухах и др)
|_ триггеры ОС (например, количество процессов, место на разделах, свободная память и др)
|_ триггеры веб сервера (например, состояние апача/нгинкса, количество запросов и др)
|_ какие-то еще триггеры
|_ серверы БД
|_ аналогично первому
|_ аналогично
|_ триггеры базы (например, состояние mysql, запросов в секунду и др)
|_ аналогично первому
|_ хранилище бекапов
|_
|_ и тут примерно тоже самое, только соответствующее хранилищу
|_
По аналогии с вышеуказанной структурой выстроены и структура пользовательского приложения, и тестовая среда.
Что мы хотим видеть:
- Для трёх сервисов (сайт, приложение и тестовая среда) три зеленых квадрата, которые показывают общее состояние конечного сервиса. То есть, если квадрат "Сайт компании" зеленый, значит все сервера(веб, бд и сторадж) работают штатно и никаких проблем на них нет. Но стоит на одном из нескольких серваков случиться проблеме(своп заполнен, диск умирает, да даже сервак отрубился), то квадратик "Сайт компании" становится желтым, а если отваливается пара серваков и остается только один - квадратик краснеет, ну а если падают все серваки и сайт недоступен, тогда квадратик и вовсе становится черным, сообщая о полной недоступности сервиса и потере денег.
- Настройка веса каждого хоста/группы хостов/триггера.
- Получать подробности от дашборда. Например, нажав на нужный квадрат проваливаться на уровень ниже, где находятся квадраты конкретных серверов и квадрат с проблемным сервером окрашивался бы в соотвествующий проблеме цвет. Затем нажав на квадрат с сервером попадали бы уже на дашборд с подробными триггерами.
Близкий функционал есть из коробки (Configuration -> Services), но это не совсем то, что нужно.
Возможно кто-то занимался подобным и может подсказать в какую сторону воевать, т.к. не до конца понятно даже по каким ключевым словам искать. Единственное что я смог нагуглить это несколько статей по сочетанию "zabbix heat map" и нечто близкое к нашим требованиям приводится в статье https://habr.com/ru/post/352822/, но это решение, как я понял, еще недоступно или не будет доступно для широкого круга пользователей.
Постарался описать как можно более подробно, надеюсь всем будет понятно. Заранее благодарю!
Прошу помочь в поиске решения.
Работаю в крупной компании с некоторым количеством сервисов и встала задача наладить мониторинг с точки зрения бизнеса.
В данный момент у нас, вероятно, как и у многих, мониторятся конкретные сервера/контейнеры/приложения и все это разрозненно вываливается на дашборды в виде графиков и сработавших триггеров, а хотелось бы иметь некий дашборд со списком конечных сервисов и их суммарным состоянием.
Поясню. Допустим, у нас имеются сайт компании, некое веб приложение для пользователей и тестовая среда для разработчиков.
Структура сервисов примерно такая:
Сайт компании
|_ веб-серверы
|_ триггеры по железу (например, смарт дисков, линк на сетевухах и др)
|_ триггеры ОС (например, количество процессов, место на разделах, свободная память и др)
|_ триггеры веб сервера (например, состояние апача/нгинкса, количество запросов и др)
|_ какие-то еще триггеры
|_ серверы БД
|_ аналогично первому
|_ аналогично
|_ триггеры базы (например, состояние mysql, запросов в секунду и др)
|_ аналогично первому
|_ хранилище бекапов
|_
|_ и тут примерно тоже самое, только соответствующее хранилищу
|_
По аналогии с вышеуказанной структурой выстроены и структура пользовательского приложения, и тестовая среда.
Что мы хотим видеть:
- Для трёх сервисов (сайт, приложение и тестовая среда) три зеленых квадрата, которые показывают общее состояние конечного сервиса. То есть, если квадрат "Сайт компании" зеленый, значит все сервера(веб, бд и сторадж) работают штатно и никаких проблем на них нет. Но стоит на одном из нескольких серваков случиться проблеме(своп заполнен, диск умирает, да даже сервак отрубился), то квадратик "Сайт компании" становится желтым, а если отваливается пара серваков и остается только один - квадратик краснеет, ну а если падают все серваки и сайт недоступен, тогда квадратик и вовсе становится черным, сообщая о полной недоступности сервиса и потере денег.
- Настройка веса каждого хоста/группы хостов/триггера.
- Получать подробности от дашборда. Например, нажав на нужный квадрат проваливаться на уровень ниже, где находятся квадраты конкретных серверов и квадрат с проблемным сервером окрашивался бы в соотвествующий проблеме цвет. Затем нажав на квадрат с сервером попадали бы уже на дашборд с подробными триггерами.
Близкий функционал есть из коробки (Configuration -> Services), но это не совсем то, что нужно.
Возможно кто-то занимался подобным и может подсказать в какую сторону воевать, т.к. не до конца понятно даже по каким ключевым словам искать. Единственное что я смог нагуглить это несколько статей по сочетанию "zabbix heat map" и нечто близкое к нашим требованиям приводится в статье https://habr.com/ru/post/352822/, но это решение, как я понял, еще недоступно или не будет доступно для широкого круга пользователей.
Постарался описать как можно более подробно, надеюсь всем будет понятно. Заранее благодарю!
Comment