Нужна помощь в создании панели мониторинга времени безотказной работы для распределенной системы.

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

В частности, я ищу

  • возможность сообщать историческую информацию о времени безотказной работы службы
  • предоставить подробную информацию о любых перебоях в обслуживании

Продукт работает на множестве Linux-серверов и подключается к БД, работающей на отдельном экземпляре, также у нас есть несколько выделенных экземпляров, которые выполняют ночные пакетные задания. Моя система также использует некоторые внешние сервисы для предоставления дополнительных функций избранным клиентам. Кэш Redis также используется для кэширования данных для нескольких клиентов.

Мы реплицируем все вышеперечисленные настройки (серверы приложений, БД, серверы заданий, кэш Redis и т. д.) в выделенные кластеры для крупных клиентов. Небольшие клиенты помещаются в один из общих кластеров, чтобы снизить затраты.

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

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

Текущая проверка работоспособности использует простой HTTP-запрос и ищет код состояния 200, эта проверка выполняется каждую минуту, и мы отображаем эти данные в простой диаграмме, чтобы показать последние 30 дней. Мы также показываем список отключений с отметкой времени и дополнительной статической информацией, которая добавляется вручную.

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

Признателен за любое руководство или помощь. Мы предпочитаем создавать решение с использованием инструментов с открытым исходным кодом, поскольку у нас нет большого бюджета. Цель состоит в том, чтобы улучшить положение членов моей команды, которые уже перегружены.




Ответы (1)


Я не уверен, будет ли это излишним или нет для вашей установки, учитывая, что я не знаю ваш продукт, но взгляните на стек ELK и посмотрите, сможете ли вы использовать некоторые компоненты или хотя бы некоторые идеи оттуда:

person Bogdan    schedule 06.01.2021