Критично важливим аспектом функціонування онлайн-сервісів, веб-сайтів та програм є їхня безперебійна робота.
Незалежно від того, чи йдеться про забезпечення діяльності важливого бізнесу, чи про задоволення особистих потреб, будь-яка затримка в роботі програми може мати значний вплив на користувачів. Саме тому, відстеження стабільності роботи вашого веб-сайту або програми є першочерговим завданням.
Хоча існує чимало онлайн-інструментів для моніторингу часу безперебійної роботи, їх не завжди можна розмістити на власних серверах. Звісно, якщо ви не плануєте самостійний хостинг і вам потрібен простий спосіб відстежувати час безвідмовної роботи, більшість доступних варіантів будуть цілком прийнятними.
Однак, вибір інструментів для самостійного розміщення досить обмежений.
На щастя, існує Uptime Kuma – інструмент моніторингу з відкритим кодом, який може стати чудовим рішенням.
У цій статті ми розглянемо можливості Uptime Kuma та надамо докладні інструкції щодо його налаштування та використання.
Команда розробників Uptime Kuma зазначає, що метою цього проекту було створення самостійної альтернативи “Uptime Robot”.
Uptime Robot є одним з провідних сервісів для моніторингу часу безвідмовної роботи. Однак, його не можна розмістити на власних серверах, а безкоштовний план має обмежені можливості моніторингу.
Таким чином, Uptime Kuma може стати відмінною альтернативою для самостійного моніторингу. Давайте розглянемо його переваги.
Використання власного рішення для моніторингу безперебійної роботи надає ряд переваг, зокрема:
- Повний контроль над вашими даними.
- Гнучкі налаштування сповіщень.
- Ширший спектр функцій за менших інвестицій.
- Можливість отримати навички самостійного керування системою.
- Можливість відстежувати внутрішні сервіси без їх виходу в Інтернет.
Хоча самостійні платформи можуть вимагати певних технічних знань, з часом їх стає простіше використовувати.
Навіть якщо ви новачок, ви можете легко слідувати інструкціям у цій статті, щоб встановити та запустити Uptime Kuma за кілька хвилин.
Можливості Uptime Kuma
Uptime Kuma дозволяє відстежувати сервіси за допомогою різних протоколів, таких як HTTP/S, TCP, DNS та інші. Основні характеристики інструменту включають:
- Можливість вибору темної, світлої або автоматичної теми інтерфейсу відповідно до налаштувань пристрою.
- Налаштування часового поясу для точного відстеження часу безвідмовної роботи.
- Доступність через Linode Marketplace.
- Підтримка сповіщень для різних платформ, таких як Telegram, Discord, Signal, Rocket.Chat, Slack, Microsoft Teams, Google Chat, Matrix тощо.
- Можливість задавати період зберігання історії моніторингу.
- Оптимізація та згортання бази даних історії.
- Двофакторна аутентифікація для захисту облікового запису моніторингу.
- Можливість експорту та імпорту налаштувань сповіщень та даних моніторингу.
- Окрема сторінка статусу.
- Діаграма пінгу.
- Багатомовна підтримка.
- Підтримка ігрових серверів Steam.
- Просте застосування сповіщень до нових або всіх моніторів.
Як налаштувати Uptime Kuma для моніторингу веб-сайту та інфраструктури додатків?
У цій статті ми використаємо Linode як платформу хостингу для створення екземпляра Uptime Kuma.
Початок роботи з Linode як хмарним рішенням є надзвичайно простим. Uptime Kuma доступний у їхньому маркетплейсі.
Це позбавляє від необхідності налаштовувати інструмент вручну. Все, що вам потрібно зробити, це встановити значення конфігурації згідно з вашими вимогами, і ви отримаєте екземпляр Uptime Kuma, який миттєво запрацює.
Давайте розглянемо процес налаштування.
Крок 1. Під час створення екземпляра Linode перейдіть до маркетплейсу Linode.
Крок 2. Знайдіть “Uptime Kuma” серед доступних програм, прокручуючи список вниз. Натисніть на нього, коли знайдете.
Крок 3. Після вибору ви отримаєте доступ до наведених нижче параметрів, які потрібно налаштувати для його роботи:
Рекомендується заповнити ці поля значеннями, які ви можете легко запам’ятати або зберегти, особливо пароль для обмеженого користувача root.
Ви можете використовувати менеджер паролів для безпечного збереження, або записати його в надійному місці.
Для адреси електронної пошти, якщо ви плануєте використовувати Uptime Kuma з певним доменом, вкажіть адресу електронної пошти з таким же доменом.
Ви можете використовувати й іншу адресу електронної пошти, але для встановлення сертифіката SSL краще використовувати адресу електронної пошти домену. Якщо у вас ще немає електронної пошти домену, радимо ознайомитись із провайдерами хостингу електронної пошти.
Крок 4. За наявності певних варіантів, ви можете ігнорувати доменне ім’я, якщо ви хочете протестувати щось за допомогою Linode.
Однак, якщо ви хочете налаштувати екземпляр Uptime Kuma на власному домені, необхідно створити токен Linode API. Токен може бути корисним для багатьох задач, наприклад, для створення серверів або керування ними через іншого провайдера хмарних послуг.
Це важливо для додавання домену. Що стосується кореневого доступу SSH, ви можете не вимикати його, якщо хочете мати можливість підключатися до вашого сервера віддалено, або ви можете вимкнути його, якщо він вам не потрібен.
Крок 5. Далі вам потрібно вибрати образ (для вашого сервера). За замовчуванням це має бути остання версія Ubuntu LTS, і, на жаль, ви не можете змінити її під час налаштування через Marketplace. Якщо ви налаштовуєте сервер з нуля, ви можете вибрати Debian 11, оскільки він також офіційно підтримує Uptime Kuma.
Крок 6. Для вибору розташування, чим ближче, тим краще для швидкості відгуку/часу доступу з вашого регіону.
Крок 7. Насамкінець, вам потрібно вибрати потрібний тарифний план Linode для забезпечення безперебійної роботи Uptime Kuma.
Хоча ви можете вибрати найдешевший варіант, рекомендується мати достатні ресурси, особливо якщо ви плануєте стежити за багатьма важливими сервісами.
Крок 8. Щоб завершити налаштування, вам потрібно буде встановити пароль адміністратора для доступу до вашого сервера. Ви також можете налаштувати SSH-ключ для доступу через SSH.
Ви також можете налаштувати VLAN, але це зазвичай потрібно для певної групи користувачів. Оцініть, чи є у вас необхідність використовувати VLAN.
Крок 9. За бажанням, ви можете ввімкнути автоматичне резервне копіювання за додаткову плату. Звичайно, ви можете експортувати дані вручну після встановлення Uptime Kuma, але автоматичне резервне копіювання надає додаткову зручність. Якщо ваші дані моніторингу є важливими, резервне копіювання є обов’язковим.
Тепер ви можете створити екземпляр Linode з встановленим Uptime Kuma.
Як отримати доступ до Uptime Kuma після встановлення?
Перший доступ є досить простим, якщо у вас вже налаштовано домен. Вам потрібно ввести ім’я домену (HTTP//:domain.com), і має відобразитися екран налаштування Uptime Kuma.
Ось як це виглядає:
Після створення користувача ви будете перенаправлені на інформаційну панель, де ви зможете почати створювати монітори для ваших веб-сайтів або програм.
Він також може мати повністю чорний вигляд (з темним режимом) залежно від налаштувань вашої системи.
Якщо ви не налаштували домен, пов’язаний з екземпляром Linode, ви можете отримати доступ до нього за допомогою IP-адреси сервера Linode у такому форматі:
https://LINODESERVERIP.ip.linodeusercontent.com/
Наприклад, до мого тестового сервера можна отримати доступ за адресою:
https://170-187-200-29.ip.linodeusercontent.com/add
Ось IP-адреса мого сервера Linode: 170.187.200.29
Зауважте, що ви не зможете нічого отримати за URL-адресою вище (я видалив екземпляр після тестування). Крім того, ви можете побачити попередження про шкідливе програмне забезпечення під час доступу до нього за адресою екземпляра, оскільки він виглядає підозрілим для програм безпеки та браузерів. Ви можете проігнорувати попередження та продовжити налаштування Uptime Kuma.
Після налаштування облікового запису користувача, ви зможете розпочати створення моніторів для вашого веб-сайту чи програми.
Як додати монітори до Uptime Kuma?
Щоб додати монітори до інформаційної панелі, потрібно натиснути “Додати новий монітор”.
На тій же сторінці з’являться параметри налаштування монітора, як показано нижче.
Вам потрібно буде вибрати тип монітора залежно від того, що ви хочете відстежувати: веб-сайт, DNS, ігровий сервер, TCP-порт тощо.
За потреби, ви можете налаштувати сповіщення. Хоча доступно безліч варіантів, ось як виглядає налаштування сповіщень через Telegram за допомогою бота:
Для цього тесту я використовував моніторинг HTTP для перевірки часу безвідмовної роботи techukraine.net. Ось які налаштування я вибрав:
- Тип моніторингу: HTTP
- URL веб-сайту
- Інтервал: 30 секунд (спеціальний)
За замовчуванням інтервал встановлено на 60 секунд, але ви можете налаштувати його, щоб контролювати з більшою або меншою частотою. Також є розширені параметри автентифікації HTTP та методи GET, POST, HEAD та інші для доступу до сторінок HTTP(S).
Крім того, ви можете вказати, щоб монітор ігнорував помилки TLS/SSL, якщо вони виникають.
Максимальна кількість перенаправлень встановлена на 10. Однак, краще встановити її на 0, якщо ви хочете уникнути будь-яких перенаправлень, коли контролюєте конкретну сторінку або URL.
Після налаштування всіх потрібних параметрів, а також сповіщень, збережіть конфігурацію, щоб додати монітор. Після деякого часу моніторингу ви повинні побачити щось на кшталт цього:
Дані включають час відповіді (останній), середній час відповіді, час безвідмовної роботи та інформацію про сертифікат SSL.
У меню також є сторінка “Статус”, яка дає огляд усіх моніторів та дозволяє додавати сповіщення до будь-яких нещодавніх інцидентів.
Сторінка статусу корисна для ваших користувачів/клієнтів, які хочуть бути в курсі подій у вашій інфраструктурі. Все, що вам потрібно зробити, це поділитися посиланням на сторінку статусу, вона не потребує аутентифікації і доступна для всіх.
Зазвичай вона доступна за адресою HTTP://domain.com/status.
Uptime Kuma – надійний варіант для самостійного розміщення
Крім Linode, ви також можете встановити його за допомогою Docker або вручну через інші установки. Ви знайдете всю необхідну інформацію для додаткових інструкцій зі встановлення (наприклад, використання зворотного проксі) на сторінці GitHub проекту.
Таким чином, ви отримуєте різноманітні можливості для встановлення з усіма необхідними функціями інструменту моніторингу. Що ще можна побажати?
Це має бути ідеальним інструментом моніторингу для більшості завдань. Спробуйте, якщо ви ще цього не зробили!