0

Menginstall nginx-prometheus-exporter di ubuntu 20.04

nginx prometheus exporter.

nginx prometheus exporter

nginx-prometheus-exporter merupakan exporter untuk nginx. Data yang diexport adalah module stub_status, dimana modul ini berfungsi untuk melihat berapa koneksi nginx yang sedang aktif, menunggu dan sudah dikembalikan ke client. Data yang diexport ini nantinya akan dicollect (diambil) oleh prometheus dan disimpan dalam bentuk time series.

menginstall nginx prometheus exporter

Prerequisite

  • Ubuntu 20.04
  • Sudah mengaktifkan module nginx stub_status
  • URL stub_status http://localhost/nginx_status

Download exporter

Kita akan menginstallnya di /home/ubuntu/nginx_exporter

Buat folder nginx_exporter dan masuk ke folder tersebut

mkdir nginx_exporter
cd nginx_exporter

Download exporternya dari github

wget https://github.com/nginxinc/nginx-prometheus-exporter/releases/download/v0.11.0/nginx-prometheus-exporter_0.11.0_linux_amd64.tar.gz

Diatas kita menggunakan versi v0.11.0. Jika ingin menggunakan versi lain bisa dicari direleasenya

https://github.com/nginxinc/nginx-prometheus-exporter/releases

Extarct file .tar.gz yang sudah terdownload

tar -xvzf nginx-prometheus-exporter_0.11.0_linux_amd64.tar.gz
nginx prometheus exporter

Kemudian tambahkan permission executable (+x) agar file binary exporternya bisa diexecute

chmod +x nginx-prometheus-exporter

Test Exporter

Selanjutnya kita test exporternya apakah bisa berjalan dengan baik.

Masih didalam folder nginx_exporter, jalankan command berikut

./nginx-prometheus-exporter -nginx.scrape-uri=http://localhost/nginx_status

Kita jalankan file binary nginx-prometheus-exporter dan ambil data stub_status dari htp://localhost/nginx_status. Jika berhasil outputnya akan seperti ini:

Starting...
Listening on :9113
NGINX Prometheus Exporter has successfully started

Buka terminal baru dan akses exporternya melalui URL

curl -X GET http://localhost:9113/metrics

Jika berhasil outputnya akan seperti dibawah

nginx prometheus exporter

Ada nginx_connections_accepted, nginx_connections_active, dll. Itu adalah metrics hasil exportan dari http://localhost/nginx_status.

Untuk melihat metrics apa saja yang tersedia, bisa lihat halaman berikut https://github.com/nginxinc/nginx-prometheus-exporter#metrics-for-nginx-oss

Buat Systemd

Sebelumnya, kita mengetest exporternya dengan menjalankan langsung file binary nginx-prometheus-exporter. Cara tersebut tidak bagus, karena ketika kita close terminalnya maka exporternya akan mati.

Cara yang benar adalah dengan membuat daemon systemd untuk exporternya. Jadi exporternya akan berjalan di background. Jika terminal ditutup exporter masih bisa menyala.

Buat file nginx_prometheus_exporter.service didalam folder systemd/system

sudo vi /etc/systemd/system/nginx_prometheus_exporter.service

Masukkan konfigurasi berikut:

[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=root
ExecStart=/home/ubuntu/nginx_exporter/nginx-prometheus-exporter -nginx.scrape-uri=http://localhost/nginx_status

[Install]
WantedBy=multi-user.target

*Yang terpenting adalah ExecStart, path tersebut untuk mengeksekusi file binary exporternya.

Kemudian reload daemon systemd agar konfigurasi file nginx_prometheus_exporter.service bisa terbaca

sudo systemctl daemon-reload

Jalankan service exporternya

sudo systemctl start nginx_prometheus_exporter.service

Enable -kan servicenya, agar ketika server direstart servicenya langsung autorun

sudo systemctl start nginx_prometheus_exporter.service

Cek status service exporter

sudo systemctl status nginx_prometheus_exporter.service

Jika outputnya seperti dibawah (active (running)), maka service exporter sudah berhasil dinyalakan

Jalankan command berikut untuk mengetest URL exporternya apakah bisa diakses

curl -X GET http://localhost:9113/metrics
nginx prometheus exporter

Nice. URL bisa diakses.

Integrasi dengan prometheus

Ditutorial berikutnya akan dibahas cara prometheus mengumpulkan (scraping) metrics exporter yang sudah kita install ini.



Sekian tutorial menginstall nginx exporter di ubuntu 20.04. Semoga bermanfaat!

Ambar Hasbiyatmoko

Hello, I'm web developer. Passionate about programming, web server, and networking.

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload the CAPTCHA.