Налаштування Uptime Kuma: моніторинг доступності сервісів під ключ

Коли сервіс недоступний, бізнес втрачає клієнтів і гроші, а команда дізнається про це останньою. Ми налаштовуємо Uptime Kuma — безкоштовний моніторинг доступності сервісів, який миттєво сповіщає про збої в Telegram та інших каналах. Наша команда реалізує проєкт під ключ: від розгортання в Docker до налаштування статус-сторінки та сповіщень, забезпечуючи стабільну роботу та подальшу підтримку.
Часті запитання

Налаштування Uptime Kuma для моніторингу доступності сервісів

Ми знаємо, що Prometheus + Grafana — потужний стек, але для базового контролю «чи живий сервіс» він надлишковий. Uptime Kuma розгортається за 5 хвилин, не потребує окремого TSDB і надає сповіщення в Telegram, Slack, Email та ще 90+ каналів з коробки. За роки роботи ми впровадили десятки систем моніторингу, і Uptime Kuma залишається найкращим вибором для невеликих проектів або доповнення до основного стеку. Економія порівняно з комерційними сервісами на кшталт Pingdom сягає 80% — ви платите лише за хостинг.

Чому Uptime Kuma — найкращий вибір для моніторингу доступності?

Він вирішує конкретне завдання: швидко визначити, що сервіс недоступний, і сповістити команду. На відміну від самописних скриптів або надлишкових систем, Uptime Kuma не потребує складного налаштування. Його простота та надійність підтверджені тисячами установок по всьому світу — ми використовуємо його в production вже кілька років. Зниження MTTR порівняно зі скриптами на Bash — на 30%, завдяки готовим інтеграціям та веб-інтерфейсу.

Як розгорнути Uptime Kuma?

Найпростіший спосіб — Docker Compose. Ми підготували типовий compose-файл:

---
version: '3.8'
services:
  uptime-kuma:
    image: louislam/uptime-kuma:1
    container_name: uptime-kuma
    restart: unless-stopped
    ports:
      - "3001:3001"
    volumes:
      - uptime-kuma-data:/app/data
volumes:
  uptime-kuma-data:
---

Запуск однією командою:

docker compose up -d 

Після запуску переходимо на http://your-server:3001, створюємо admin-акаунт і починаємо додавати монітори. Дані зберігаються в SQLite всередині volume — жодної зовнішньої бази не потрібно.

Для production рекомендується ставити за зворотним проксі з TLS. Ми використовуємо Caddy:

uptime.example.com { reverse_proxy uptime-kuma:3001 } 

Порівняємо методи розгортання:

Метод Час встановлення Складність Підходить для
Docker Compose 5 хвилин Низька Тест, невеликий production
Bare metal / VM 15 хвилин Середня Production з ізоляцією
Helm chart (Kubernetes) 30 хвилин Висока Масштабований кластер

Що моніторимо і як?

Uptime Kuma підтримує кілька типів перевірок:

Тип Опис Приклад використання
HTTP(S) Перевірка коду відповіді та ключового слова в тілі Моніторинг веб-сайтів, API
TCP Перевірка відкритого порту Бази даних, SSH, Redis
DNS Перевірка резолвінгу домену Доступність DNS-серверів
Ping ICMP-запит до хосту Мережеві пристрої, обладнання
Docker Container Перевірка стану контейнера через Docker socket Контейнерні сервіси

Для кожного монітора ми налаштовуємо Heartbeat interval (зазвичай 60 секунд) і Retries (2–3 спроби перед алертом, щоб виключити флапінг). Max retries before unhealthy = 3 означає: тільки після трьох поспіль невдалих перевірок статус змінюється на down і надсилається сповіщення.

Групування та статус-сторінка

Монітори ми організовуємо в групи: Production, Staging, Infrastructure. Кожній групі можна призначити окремий notification channel — production-алерти йдуть у PagerDuty або терміновий Telegram-чат, staging — у загальний канал команди.

Вбудована Status Page — публічна сторінка з агрегованим статусом. Налаштовується за 10 хвилин: обираємо потрібні монітори, вказуємо домен (status.example.com), додаємо логотип. Клієнти бачать поточний статус та історію інцидентів, не маючи доступу до внутрішнього Uptime Kuma.

Як налаштувати сповіщення?

  1. Зайдіть у налаштування сповіщень в адмін-панелі.
  2. Виберіть канал: Telegram, Slack, Email, PagerDuty, Webhook та інші.
  3. Вкажіть параметри (токен, URL, отримувачі).
  4. Призначте канал для групи моніторів.
  5. Перевірте тестовим алертом.

Ми рекомендуємо налаштувати мінімум два канали: терміновий (Telegram/Slack) та поштовий для архівування.

Порівняння з аналогами

Uptime Kuma дає 80% функціональності платних сервісів на кшталт Pingdom або Better Uptime, але при цьому повністю безкоштовний і розміщується на вашому сервері. Порівняно з самописними скриптами на Bash — він пропонує готовий веб-інтерфейс, історію збоїв та інтеграції, що знижує MTTR на 30%.

Характеристика Uptime Kuma PushMonitors Prometheus + Grafana
Час розгортання 5 хвилин 1 година 2 години
Сховище метрик SQLite PostgreSQL TSDB
Вбудовані сповіщення 90+ каналів 5 каналів Потребує налаштування Alertmanager
Статус-сторінка Так Так Немає з коробки

Обмеження, про які варто знати

Uptime Kuma не зберігає метрики у вигляді часових рядів з довільними запитами — лише історію up/down та response time. Для SLA-розрахунків (% uptime за місяць) вбудований звіт достатній, але якщо потрібна інтеграція з Grafana SLO dashboards — Uptime Kuma вміє віддавати метрики у форматі Prometheus через /metrics endpoint (вмикається в налаштуваннях). Це дозволяє scrape'ити response time та availability прямо в Prometheus і будувати дашборди там.

Що входить у роботу

Ми надаємо послугу під ключ:

  • Розгортання Uptime Kuma в Docker або на bare metal з TLS.
  • Налаштування 10–20 моніторів на ваш вибір (HTTP, TCP, Ping, DNS).
  • Інтеграція сповіщень у Telegram, Slack, Email (до 3 каналів).
  • Створення публічної статус-сторінки на вашому домені.
  • Документація з додавання нових моніторів та зміни каналів.
  • Навчання чергових інженерів основам адміністрування.
  • Підтримка протягом 30 днів після впровадження.

Строки

Базова установка з налаштуванням 10–20 моніторів та сповіщень — половина робочого дня. Якщо потрібна інтеграція з існуючим Prometheus, налаштування статус-сторінки з кастомним доменом та документація — 1 день.

Оцініть ваш проект — зв'яжіться з нами для консультації. Ми маємо 5+ років досвіду в DevOps та впровадили моніторинг для 50+ проектів. Гарантуємо стабільну роботу та повну відповідність вашим вимогам. Замовте налаштування Uptime Kuma — отримайте надійний моніторинг без зайвих витрат.

Офіційний репозиторій Uptime Kuma: GitHub

Наші компетенції:

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1543
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1374
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1142