apache prometheus exporter.
Apache exporter digunakan untuk mengexport data apache (server-status) yang berisi tentang informasi webserver apache dan traffic yang masuk. Data ini akan diexport dalam bentuk metrics, sehingga dapat dikumpulkan ke dalam prometheus dalam bentuk time series.
Untuk mengexportnya, kita bisa gunakan https://github.com/Lusitaniae/apache_exporter.
Prerequisite
- Ubuntu 20.04
- Sudah mengaktifkan module apache server-status
- URL server-statusĀ
http://localhost/server-status
Download apache exporter
Kita akan menginstallnya di /home/ubuntu/apache_exporter
.
Buat folder apache_exporter dan masuk kedalam foldernya
mkdir apache_exporter
cd apache_exporter
Lalu download exporternya menggunakan wget
wget https://github.com/Lusitaniae/apache_exporter/releases/download/v1.0.3/apache_exporter-1.0.3.linux-amd64.tar.gz
Jika sudah terdownload, extract file .tar.gz
tar -xvzf apache_exporter-1.0.3.linux-amd64.tar.gz
Masuk kedalam folder hasil extract -an tadi dan tambahkan permission file apache_exporter
agar nanti bisa diexecute
cd apache_exporter-1.0.3.linux-amd64
chmod +x apache_exporter
Test Apache Exporter
Kita test exporternya dengan menjalankan command berikut:
./apache_exporter --scrape_uri="http://localhost/server-status?auto" --web.listen-address=:9117
- kita jalankan exporternya dengan mengexecute file
apache_exporter
- kita ambil (scrape) datanya dari http://localhost-server-status?auto, dimana parameter ?auto ini mandatory (jangan sampai lupa tambahkan parameter ini, karena exporter mengambil data lewat parameter ?auto).
- exporternya kita bisa akses menggunakan port 9117
jika exporter berhasil dijalankan, seperti ini outputnya:
Kemudian kita coba akses exporternya melalui port 9117
curl -X GET http://localhost:9117/metrics
jika berhasil, seharusnya exporter mengeluarkan response seperti ini:
apache_accessess_total, apache_cpu_time_ms_total, dll merupakan metrics hasil exportan dari http://localhost/server-status. Metrics lengkapnya bisa kalian lihat disini https://github.com/Lusitaniae/apache_exporter#collectors
Buat systemd
Kita bisa buat daemon systemd untuk exporternya. Tujuannya supaya exporter bisa dijalankan in background (dibelakang layar) sebagai service daemon pada ubuntu.
Buat file apache_prometheus_exporter.sevice
sudo vi /etc/systemd/system/apache_prometheus_exporter.service
isikan dengan konten berikut
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=root
ExecStart=/home/ubuntu/apache_exporter/apache_exporter-1.0.3.linux-amd64/apache_exporter --scrape_uri="http://localhost/server-status?auto" --web.listen-address=:9117
[Install]
WantedBy=multi-user.target
*ExecStart disini akan menjalankan file apache_exporter dengan beberapa parameter yang sudah kita set sebelumnya.
Restart daemon systemd untuk mengaktifkan konfigurasi apache_prometheus_exporter.service
sudo systemctl daemon-reload
Jalankan dan enable-kan service exporternya
sudo systemctl start apache_prometheus_exporter.service
sudo systemctl enable apache_prometheus_exporter.service
Cek service exporternya apakah sudah hidup
Bagus servicenya sudah hidup. Selanjutnya kita bisa test lagi URL exporternya dengan menghit port 9117
curl -X GET http://localhost:9117/metrics
Berhasil.
Integrasi dengan prometheus
Di next tutorial, saya akan jelaskan cara integrasi dengan prometheus. Bagaimana prometheus mengambil (scrape) data metrics yang sudah kita buat ini. Akan saya update linknya disini. tunggu saja.
—
Demikian tutorial menginstall apache prometheus exporter di ubuntu 20.04. Semoga bermanfaat!