Back to Home
Cloud Native

Installing Prometheus on Ubuntu 26.04

Zainun Kamal
8/3/2026
1 views

Introduction

Dalam era infrastruktur modern dan arsitektur microservices, pengawasan (monitoring) ketersediaan serta performa sistem merupakan kebutuhan krusial. Prometheus hadir sebagai salah satu solusi open-source monitoring & alerting toolkit berstandar industri yang paling populer, terutama dalam ekosistem cloud-native.

Prometheus bekerja menggunakan model pull-based metrics collection, di mana server Prometheus secara berkala menarik (scrape) data metrik dari target terkonfigurasi melalui endpoint HTTP.

Panduan ini akan membahas alur instalasi Prometheus secara manual dari biner (binary) di sistem operasi Ubuntu 26.04 LTS, pengaturan izin akses system user, hingga konfigurasi berkala agar Prometheus dapat berjalan sebagai systemd service yang stabil.

Configuration

Step 1: Install package prometheus

Secara default di Ubuntu 26.04 itu sudah tersedia package prometheus pada default repo ubuntu. Jadi kita tidak instalasi secara manual.

sudo apt update && sudo apt upgrade -y
sudo apt install prometheus

Step 2: Enable UFW (jika diaktifkan)

sudo ufw allow 9090/tcp

Step 3: Install new UI

Karena kita menggunakan package default dari repo ubuntu, UI baru belum di install. Kita harus install secara manual

sudo /usr/share/prometheus/install-ui.sh
sudo systemctl restart prometheus

Prometheus sudah bisa digunakan

Enchanment

Membuat Basic Auth untuk akses ke Prometheus API

Membuat script hash menggunakan python bcrypt

cd ~
sudo apt install python3-bcrypt -y

cat << EOF > gen-pass.py
import getpass
import bcrypt

# 1. Meminta input password dari user
password = getpass.getpass("password: ")

# 2. Membuat hash bcrypt
hashed_password = bcrypt.hashpw(password.encode("utf-8"), bcrypt.gensalt())
hash_str = hashed_password.decode()

# 3. Menyusun format teks YAML yang Anda inginkan
config_content = f"""basic_auth_users:
  admin: {hash_str}
"""

# 4. Menulis dan menyimpan langsung ke file web-config.yml
nama_file = "web.yml"
with open(nama_file, "w") as file:
    file.write(config_content)

print(f"\n[Sukses] Hash berhasil dibuat dan langsung disimpan ke file '{nama_file}'!")
print("Berikut adalah isi filenya:")
print(config_content)
EOF

Buat password dengan menjalankan script tersebut

python3 gen-pass.py

Pindahkan file web.ymldan ubah permission

sudo mv web.yml /etc/prometheus/
sudo chown prometheus /etc/prometheus/web.yml
sudo chmod 600 /etc/prometheus/web.yml

Ubah service konfigurasi agar bisa menggunakan hashing yang sudah dibuat

sudo nano /usr/lib/systemd/system/prometheus.service

Cara bagian ExecStart kemudian ubah menjadi dibawah ini

ExecStart=/usr/bin/prometheus --web.config.file=/etc/prometheus/web.yml $ARGS

Restart service prometheus

sudo systemctl daemon-reload
sudo systemctl restart prometheus