Namun, layanan monitoring pihak ketiga seringkali dibanderol dengan harga yang tidak murah. Kabar baiknya, ada solusi open-source yang powerful dan gratis yaitu Uptime Kuma.
Uptime Kuma sebuah tool monitoring self-hosted dengan antarmuka yang modern dan mudah digunakan. Kamu bisa memantau status HTTP(s), port TCP, ping, DNS, hingga container Docker hanya melalui satu dashboard yang elegan.
Update Repository dan Upgrade Package
Perbarui repository, paket pada ubuntu 24.04 .
sudo apt update -y && sudo apt upgrade -y
Install Node Js
Masukan repository Node Js, lalu install node js dengan menjalankan perintah dibawah.
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - && sudo apt install -y nodejs
Install PM2 (Proses Manager 2), agar uptime kuma bisa berjalan.
sudo npm install pm2 -g
Setelah Node.js terinstall, harus clone Git Repository Uptime Kuma, namun sebelum melakukan itu pastikan memiliki aplikasi git.
sudo apt update && sudo apt install -y git
Clone Repository Uptime Kuma
Jalankan perintah dibawah untuk melakukan clone Uptime Kuma.
git clone https://github.com/louislam/uptime-kuma.git
Masuk pada direktori uptime-kuma
cd uptime-kuma
Setelah berada di direktori uptime-kuma, perlu menjalankan perintah npm run setup, perintah ini berfungsi untuk mempersiapkan lingkungan pengembangan, seperti memasang dependensi, membuat basis data awal, atau mengatur konfigurasi khusus yang dibutuhkan.
npm run setup
pm2-logrotate mengelola dan membatasi ukuran file log dari aplikasi yang berjalan di server secara otomatis.
Modul ini mencegah memori server penuh dengan melakukan rotasi, kompresi, dan penghapusan file log berdasarkan aturan (rule) yang ditetapkan.
sudo pm2 install pm2-logrotate
Sekarang saatnya untuk menjalankan uptime kuma dengan perintah dibawah ini dan untuk memastikan berjalan otomatis saat server restart, uptime kuma tetap berjalan otomatis.
sudo pm2 start server/server.js --name uptime-kuma sudo pm2 startup
Install Web Server Nginx
Fungsi dari nginx sebagai reverse proxy ke aplikasi uptime kuma yang berjalan di lokal ubuntu server atau ingin menambahkan domain dan SSL.
sudo apt install nginx -y
Cek version nginx dan status service.
nginx -v systemctl status nginx
Buat block nginx reverse proxy aplikasi uptime kuma.
sudo nano /etc/nginx/conf.d/uptime-kuma.conf
Masukan konfigurasi block nginx reverse proxy dibawah.
server {
listen 80;
server_name uptime-kuma.DOMAIN;
location / {
proxy_pass http://localhost:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Added WebSocket support
proxy_set_header Sec-WebSocket-Key $http_sec_websocket_key;
proxy_set_header Sec-WebSocket-Version $http_sec_websocket_version;
proxy_set_header Sec-WebSocket-Extensions $http_sec_websocket_extensions;
# Improve performance of this reverse proxy
proxy_buffering off;
}
# Redirect HTTP to HTTPS if needed for encryption
# Uncomment the following lines if you have SSL enabled
# return 301 https://$host$request_uri;
}
Setelah menyimpan file konfigurasi di atas, cukup restart service nginx dan sekarang memiliki tools monitoring Uptime Kuma yang berjalan di server linux server.
sudo systemctl restart nginx
Setup Uptime Kuma
Akses url http://IP_Public atau domain pada browser, setup uptime kuma tahap untuk melakukan konfigurasi pada aplikasi.
Pilih database yang akan digunakan oleh uptime kuma, disini menggunakan SQLite untuk monitoring skala kecil.

Buatk user admin dan password, digunakan untuk login ke dashboard uptime kuma.

Berikut dsahboard dari uptime kuma.

Menambahkan New Monitor
Contoh disini akan monitoring Blog WordPress “Geeks Conn” dengan protocol https, Klik +Add New Monitor.

Pada general Monitor Type: HTTP(s), Friendly Name “Geeks Conn“, URL: https://geeksconn.com . Klik Ok

Berikut hasil menambahkan New Monitor Uptime Kuma. Herbeart Interval akan mengecek setiap 60 detik memberikan status UP, Uptime Kuma akan memberi status down jika request timeout selama 48 detik.

Membuat Halaman Status Uptime Kuma
Masuk menu Status Pages disebelah pojok kanan.

+New Status Page untuk membuat halaman Uptime Kuma.

Masukan nama halaman pada kolom name dan masukan nama slug untuk halaman Uptime Kuma. Next

Berikut pengaturan status page uptime kuma, tambahkan service yang akan ditampilkan pada halaman. Save

Berikut tmapilan halaman uptime kuma.

Kesimpulan
Kamu kini telah berhasil menjalankan server monitoring Uptime Kuma secara self-hosted di Ubuntu 24.04 LTS.
Tidak perlu lagi bergantung pada layanan monitoring berbayar. Dengan tool ini, kamu akan langsung mendapatkan notifikasi begitu ada layanan yang bermasalah, sehingga bisa bertindak cepat sebelum pengguna lain mengeluh.
