Как отслеживать веб-сайт и приложение с помощью Uptime Kuma
Uptime Kuma — это необычный автономный инструмент мониторинга, который вы можете использовать для мониторинга веб-сайтов и приложений в режиме реального времени.
Возможности Uptime Kuma
- Отслеживает время безотказной работы веб-сайтов HTTP, TCP-портов и контейнеров Docker и извлекает такую информацию, как записи DNS.
- Отправляет уведомления по электронной почте (SMTP), Telegram, Discord, Microsoft Teams, Slack, промо-SMS, Gotify и более чем 90 службам уведомлений.
- Поддерживает несколько языков.
- Предоставляет несколько страниц состояния.
- Обеспечивает поддержку прокси.
- Отображает информацию о сертификате SSL.
- Сопоставляет страницу состояния с доменом.
В этом руководстве вы узнаете, как установить автономный инструмент мониторинга Uptime Kuma и как с его помощью можно отслеживать веб-сайты.
Для демонстрации мы установим инструмент Uptime Kuma Monitoring в Ubuntu 20.04. Те же инструкции также работают с дистрибутивами на основе RHEL и производными Debian.
Шаг 1. Установка Node.JS в Linux
Чтобы начать, войдите на свой сервер и обновите локальный индекс пакетов.
sudo apt update
sudo dnf update
Поскольку Uptime Kuma написан на Node.JS, вам необходимо установить Node.JS, прежде чем продолжить. Мы установим последнюю версию LTS, которая на момент написания этого руководства называлась Node.JS 16.x.
Сначала добавьте в свою систему репозиторий Nodesource. Для этого переключитесь на пользователя root.
sudo su
Затем добавьте репозиторий Nodesource 16.x в свою систему, используя следующую команду Curl следующим образом.
curl -sL https://deb.nodesource.com/setup_16.x | sudo bash - [On Debian systems]
curl -sL https://rpm.nodesource.com/setup_16.x | sudo bash - [On RHEL systems]
Команда загружает сценарий установки, который обновляет списки пакетов, добавляет ключ подписи Nodesource и создает файл списка apt и dnf для репозитория Nodesource 16.x.
После добавления репозитория Nodesource установите Node.JS с помощью менеджера пакетов, как показано.
sudo apt install nodejs -y [On Debian systems]
sudo dnf install nodejs -y [On RHEL systems]
После установки подтвердите установленную версию NodeJS, как показано.
node --version
V16.17.0
Шаг 2. Установка Uptime Kuma в Linux
После установки Node.JS вы можете приступить к установке инструмента мониторинга Uptime Kuma. Сначала клонируйте репозиторий Uptime Kuma из GitHub.
git clone https://github.com/louislam/uptime-kuma.git
Затем перейдите в каталог Uptime Kuma.
cd uptime-kuma/
Затем настройте инструмент мониторинга с помощью следующей команды:
npm run setup
Шаг 3. Запустите Uptime Kuma с помощью pm2.
PM2 — это менеджер производственного процесса для приложений NodeJS, который обеспечивает балансировку нагрузки и помогает поддерживать работу приложений в течение неопределенного времени и перезагружать их без каких-либо перерывов или простоев служб.
Чтобы установить демон PM2, выполните следующую команду, находясь в каталоге uptime-kuma.
npm install pm2@latest -g
Затем запустите демон pm2, как показано.
pm2 start npm --name uptime-kuma -- run start-server -- --port=3001 --hostname=127.0.0.1
Команда генерирует следующий вывод.
Вы можете просмотреть журналы PM2, как показано.
pm2 logs
Затем включите запуск приложения Node.js после перезагрузки.
pm2 startup
Затем сохраните состояние приложения, как показано.
pm2 save
Шаг 4. Настройте Apache в качестве обратного прокси-сервера для Uptime-Kuma
Затем вам необходимо установить веб-сайт Apache, а затем настроить его в качестве обратного прокси-сервера для Uptime Kuma.
sudo apt install apache2 -y [On Debian systems]
sudo dnf install httpd -y [On RHEL systems]
После установки включите следующие модули, которые потребуются инструменту мониторинга в системах на базе Debian.
a2enmod ssl proxy proxy_ajp proxy_wstunnel proxy_http rewrite deflate headers proxy_balancer proxy_connect proxy_html
Затем создайте файл виртуального хоста для Uptime Kuma.
sudo nano /etc/apache2/sites-available/uptime-kuma.conf [On Debian systems]
sudo vi /etc/httpd/conf.d/uptime-kuma.conf [On RHEL systems]
Вставьте следующие строки кода. В директиве ServerName укажите полное доменное имя вашего сервера или общедоступный IP-адрес.
<VirtualHost *:80>
ServerName kuma.example.com
ProxyPass / http://localhost:3001/
RewriteEngine on
RewriteCond %{HTTP:Upgrade} websocket [NC]
RewriteCond %{HTTP:Connection} upgrade [NC]
RewriteRule ^/?(.*) "ws://localhost:3001/$1" [P,L]
</VirtualHost>
Сохраните файл и выйдите.
Затем активируйте виртуальный хост Apache для Uptime Kuma, как показано в системах на базе Debian.
sudo a2ensite uptime-kuma
Затем перезапустите веб-службу Apache, чтобы изменения вступили в силу.
sudo systemctl restart apache2 [On Debian systems]
sudo systemctl restart httpd [On RHEL systems]
Шаг 5. Доступ к Uptime Kuma из веб-интерфейса.
Установив и полностью настроив Uptime Kuma, запустите браузер и посетите доменное имя или общедоступный IP-адрес вашего сервера.
http://server-ip
OR
http://domain-name
WebUI появится, как показано, и вам потребуется создать учетную запись администратора. Поэтому укажите имя пользователя и пароль и нажмите «Создать», чтобы создать учетную запись администратора.
Вы войдете в панель управления Uptime Kuma. Чтобы начать мониторинг веб-сайта, нажмите кнопку «Добавить новый монитор». Заполните данные сайта, который вы хотите отслеживать.
Вскоре после этого Uptime Kuma начнет отслеживать ваш сайт и предоставлять различные показатели времени безотказной работы, как показано на рисунке.
Вот и все! Мы успешно установили и настроили Uptime Kuma и смогли отслеживать веб-сайт. Ваши отзывы об этом руководстве приветствуются.