Мониторинг и алертинг
February 15

Установка и настройка мониторинга/алертинга Uptime Kuma


В данной статье разберем как буквально за 5 минут установить и настроить средство мониторинга и алертинга uptime Kuma.

Введение

Почему так важен мониторинг и алертинг серверов?

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

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

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

3. Улучшение производительности: Мониторинг помогает отслеживать производительность серверов и веб-сайтов, что позволяет оптимизировать работу ресурсов и повысить качество обслуживания для пользователей.

4. Обеспечение безопасности: Мониторинг позволяет выявлять аномальную активность, атаки или уязвимости на серверах, что помогает предотвращать утечку данных или другие серьезные проблемы безопасности.

5. Соблюдение SLA: Мониторинг и алертинг помогают соблюдать уровни сервиса (SLA), обеспечивая надежную доступность и производительность веб-сайта для пользователей.

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

Что такое Uptime Kuma?

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

Установка Uptime Kuma

1) Арендуем сервер под нашу службу мониторинга. Можно брать самые минимальные конфигурации по процессору и оперативной памяти, но размер диска должен быть как моно больше, т.к утилита засоряет потихоньку память.

2) Скачиваем Uptime Kuma

Для удобство пользователей был сделан автоматический скрипт, который установит на ваш сервер данную службу и поставит ее в docker контейнер

. <(wget -qO- https://raw.githubusercontent.com/g7AzaZLO/UptimeKuma-autoinstaller/main/UptimeKuma-auto-install.sh)

Так же данный скрипт можно найти в нашем гитхабе.

3) После ввода команды она сама все скачает, установит и т.д. На выходе в последних строчках мы должны видеть следующее

4) Переходим по адресу http://<ip-address>:3001

Вместо <ip-address> соответственно вписываем ip адрес сервера на который установили утилиту

Настройка Uptime Kuma

Регистрация

1) После перехода по адресу мы увидим окно входа в профиль

Создание монитора

Выбираем язык, придумываем логин и пароль, нажимаем кнопку create

1) После создания профиля мы войдем в наш дашборд, который пока что пустой

2) Нажимаем на кнопку "Новый монитор"

У нас откроется поле создания нового монитора

3) Поменяем тип монитора на "Ping", т.к мы хотим отслеживать аптайм нашего сервера

Далее разберем все поля - за что они отвечают

Имя - отображаемое имя сервера в дашборде

Имя хотса - ip адрес сервера который будем отслеживать

Частота опроса - утилита будет проверять ваш сервер каждые n секунд

Попыток - если утилита не может достучаться до сервера, то после этого количества попыток она пришлет уведомление о сбое(если настроен алертинг)

Интервал повтора опроса - как только утилита понимает что от сервера нет ответа, то интервал опроса сервера меняется с частоты опроса(на скрине 60 секунд) на интервал повтора опроса(на скрине 30 секунд)

Реверс статуса - это и означает. Если сервер доступен, то в дашборде будет показывать что недоступен, если недоступен, то будет показывать что доступен

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

Группа мониторов - отображаемая в дашборде группа

Описание - пометка для нашего мониторинга

Теги - теги которые отображаются около каждого мониторинга в дашборде

Алгоритм с настройками с скрина следующий: утилита опрашивает сервер каждые 60 секунд, если она не может достучаться до сервера, то она сокращает время опроса до интервала в 30 сек, делает 4 попытки, если после 4 попыток сервер так и не дал ответа, то, при настроенном алертинге, вам присылается уведомление о сбое. Дальше станет понятнее, я покажу на практике

4) Создадим тег test. В случае реального использования можно использовать теги "Mainnet","Testnet" для более наглядной сортировки в дашборде

Настройка алертинга

1) Нажмем на кнопку "Создать уведомление"

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

2) Заходим в телеграме в https://t.me/BotFather

3) Создаем бота и копируем его API

4) Заходим в самого бота, прописываем /start и пишем пару любых сообщений, чтобы бот нас увидел

5) Вставляем токен бота и нажимаем кнопку "Авто-получение" в поле ID-чата

6) Снизу, опционально нажимаем "Использовать по умолчанию", нажимаем кнопку "сохранить"

У нас добавится наш монитор в дашборд

Тут мы можем увидеть всю информацию по аптайму и пингу нашего сервера

7) Нажмем кнопку "Изменить" (левее кнопки Удалить), потом справа найдем наш алерт, около него так же нажмем кнопку "Изменить" и нажмем кнопку "Проверка"

После нажатия этой кнопки - наш телеграм бот должен прислать нам уведомление

Что будет если сервер упадет?

Теперь я вам наглядно покажу что происходит если сервер падает. Я намеренно выключаю сервер и мы видим следующее(были изменены настройки на частоту опроса 20 сек и интервал повтора 20 сек, чтобы я не ждал долго)

Статус сервера поменялся на "Ожидание". Далее сервер отошлет еще 3 запроса, после чего будет сообщение о падении сервера

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

Далее я включу сервер и мы увидим что статус поменяется обратно на "Доступен" и бот пришлет нам уведомление о том что все хорошо

Настройка страницы статуса

Страница статуса нужна для публичного просмотра ваших серверов, которые вы выставите в данную кладку

1) Сверху справа нажимаем кнопку "Страницы статуса"

У нас появляется поле создания страницы статуса

Придумываем имя(заголовок) нашей странички и в Slug прописываем путь до нашей публичной страницы(любое) и нажимаем далее

1) Нажимаем добавить монитор и нажимаем на наш монитор

2) По желанию заполняем описание и пользовательский footer

3) Нажимаем слева снизу сохранить

Так выглядит наш публичный дашборд, в который может зайти любой человек


Наш телеграмм канал по нодам — https://t.me/g7monitor
Наш чат по нодам — https://t.me/g7team_chat