Prometheus adalah sistem pemantauan sumber terbuka yang sangat baik yang memungkinkan kami mengumpulkan metrik dari aplikasi kami dan menyimpannya dalam database, terutama DB berbasis deret waktu. Keuntungan terbesar dari Prometheus adalah bahasa kueri yang disediakan untuk pemrosesan data. Ini memiliki antarmuka web yang memungkinkan pemantauan mudah dari perangkat apa pun dengan koneksi internet dan juga mendukung peringatan melalui email dan pesan SMS jika metrik melampaui ambang yang dikonfigurasi.
Di sini, di LinuxAPT, sebagai bagian dari Layanan Manajemen Server kami, kami secara teratur membantu Pelanggan kami untuk melakukan permintaan Instalasi Perangkat Lunak terkait.
Dalam konteks ini, kita akan melihat cara menginstal Prometheus di Ubuntu 20.04 LTS.
Langkah-Langkah Menginstal Prometheus di Ubuntu 20.04 LTS Focal Fossa ?
1. Lakukan pembaruan sistem
Pertama, pastikan semua paket sistem Anda mutakhir dengan menjalankan perintah apt berikut di terminal:
$ sudo apt update
$ sudo apt upgrade
2. Instal server web Nginx
Nginx tersedia di repositori default Ubuntu. Untuk menginstalnya jalankan perintah berikut:
$ sudo apt install nginx
Setelah penginstalan selesai, jalankan perintah untuk mengaktifkan Nginx untuk memulai secara otomatis saat server Anda mulai:
$ sudo systemctl stop nginx.service
$ sudo systemctl start nginx.service
$ sudo systemctl enable nginx.service
3. Buat Pengguna Prometheus
Kita harus membuat pengguna dan grup yang disebut prometheus dan juga direktori yang disebut Prometheus:
$ sudo useradd -s /sbin/nologin --system -g prometheus prometheussudo mkdir /var/lib/prometheus
for i in rules rules.d files_sd; do sudo mkdir -p /etc/prometheus/${i}; done
4. Instal Prometheus di sistem
Unduh rilis stabil terbaru Prometheus menggunakan perintah wget:
$ mkdir -p /tmp/prometheus && cd /tmp/prometheus
curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest | grep browser_download_url | grep linux-amd64 | cut -d '"' -f 4 | wget -qi -
tar xvf prometheus*.tar.gz
Setelah ekstraksi file selesai, pindahkan binari prometheus dan promtool di bawah folder arsip Prometheus yang diekstraksi ke/usr/local/bindirectory:
$ sudo mv prometheus promtool /usr/local/bin/
5. Konfigurasi Prometheus
Kami akan membuat file konfigurasi bernama prometheus.yml di direktori /etc/prometheus:
$ sudo mv prometheus.yml /etc/prometheus/prometheus.yml
$ sudo mv consoles/ console_libraries/ /etc/prometheus/
$ sudo nano /etc/prometheus/prometheus.yml
Isi dari prometheus.yml adalah sebagai berikut:
konfigurasi global saya
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
Alertmanager configuration
alerting:
alertmanagers:
static_configs: targets:
# - alertmanager:9093
Muat aturan sekali dan evaluasi secara berkala sesuai dengan 'evaluation_interval' global.
file_aturan:
# - "first_rules.yml"
# - "second_rules.yml"
Konfigurasi pengikisan yang berisi tepat satu titik akhir untuk pengikisan:
Ini dia Prometheus itu sendiri.
scrape_configs:
# The job name is added as a label job= to any timeseries scraped from this config.
job_name: 'prometheus'
metrics_path defaults to '/metrics'
scheme defaults to 'http'.
static_configs:
targets: ['localhost:9090']
6. Buat Layanan Sistem Prometheus
Sekarang, kita akan membuat file untuk layanan systemd:
$ sudo nano /etc/systemd/system/prometheus.service
Tambahkan file berikut:
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/docs/introduction/overview/
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=prometheus
Group=prometheus
ExecReload=/bin/kill -HUP \$MAINPID
ExecStart=/usr/local/bin/prometheus \
--config.file=/etc/prometheus/prometheus.yml \
--storage.tsdb.path=/var/lib/prometheus \
--web.console.templates=/etc/prometheus/consoles \
--web.console.libraries=/etc/prometheus/console_libraries \
--web.listen-address=0.0.0.0:9090 \
--web.external-url=
SyslogIdentifier=prometheus
Restart=always
[Install]
WantedBy=multi-user.target
Kemudian, ubah kepemilikan direktori ini menjadi pengguna dan grup Prometheus:
for i in rules rules.d files_sd; do sudo chown -R prometheus:prometheus /etc/prometheus/${i}; done
for i in rules rules.d files_sd; do sudo chmod -R 775 /etc/prometheus/${i}; done
sudo chown -R prometheus:prometheus /var/lib/prometheus/
Setelah Anda selesai dengan konfigurasi di atas, muat ulang systemd menggunakan perintah berikut:
$ sudo systemctl daemon-relaod
$ sudo systemctl start prometheus
$ sudo systemctl enable prometheus
7. Konfigurasi Firewall
Sementara itu, Anda perlu memastikan bahwa firewall Anda dikonfigurasi untuk mengizinkan lalu lintas pada port HTTP (80), HTTPS (443) dan 9090. Nginx mendaftarkan dirinya sebagai layanan dengan ufw :
$ sudo ufw allow in "Nginx Full"
$ sudo ufw allow 9090/tcp
8. Akses Antarmuka Web Prometheus
Prometheus akan tersedia pada port HTTP 9090 secara default.
Buka browser favorit Anda dan navigasikan ke http://domain-anda.com:9090 atau http://server-ip-addreess:9090 dan selesaikan langkah-langkah yang diperlukan untuk menyelesaikan penginstalan.