Blackbox Exporter, berfungsi untuk pemeriksaan endpoint lewat HTTP, HTTPS, DNS, TCP, ICMP dan gRPC yang dikombinasikan dengan Prometheus.
1. Instalasi Blackbox#
Membuat user blackbox dan direktori yang dibutuhkan.
1
2
3
| sudo useradd --no-create-home --shell /bin/false blackbox_exporter
sudo mkdir /etc/blackbox_exporter
sudo chown blackbox_exporter:blackbox_exporter /etc/blackbox_exporter
|
Untuk pemasanganya kita perlu mendownload terlebih dahulu binari file pada halaman https://blackbox.io/download/ untuk memilih versi yang akan digunakan.
1
2
3
4
5
| # Definisikan versi blackbox yang akan di install
BLACKBOX_VER=0.23.0
sudo wget https://github.com/prometheus/blackbox_exporter/releases/download/v$BLACKBOX_VER/blackbox_exporter-$BLACKBOX_VER.linux-amd64.tar.gz
# extract dan pindah ke direktori blackbox
sudo tar -zxvf blackbox_exporter-$BLACKBOX_VER.linux-amd64.tar.gz && cd blackbox_exporter-$BLACKBOX_VER.linux-amd64
|
Install file binari blackbox
1
2
| sudo install -o blackbox_exporter -g blackbox_exporter \
blackbox_exporter /usr/local/bin
|
2. Konfigurasi Blackbox#
Pindahkan konfigurasi file blackbox.yml
serta update ownership ke blackbox_exporter user
1
2
| sudo mv blackbox.yml /etc/blackbox_exporter
sudo chown -R blackbox_exporter:blackbox_exporter /etc/blackbox_exporter
|
3. Konfigurasi Service Blackbox#
Buat file service systemd blackbox
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| cat <<EOF | sudo tee /etc/systemd/system/blackbox_exporter.service
[Unit]
Description="The blackbox exporter allows blackbox probing of endpoints over HTTP, HTTPS, DNS, TCP, ICMP and gRPC."
Wants=network-online.target
After=network-online.target
[Service]
User=blackbox_exporter
Group=blackbox_exporter
Type=simple
ExecStart=/usr/local/bin/blackbox_exporter \
--config.file /etc/blackbox_exporter/blackbox.yml \
--web.listen-address="0.0.0.0:9115"
[Install]
WantedBy=multi-user.target
EOF
|
Reload systemd service untuk mendaftarkan service yang baru, lalu jalankan pada saat system boot.
1
2
3
4
| sudo systemctl daemon-reload
sudo systemctl enable --now blackbox_exporter
# Pastikan service sudah berjalan
sudo systemctl status blackbox_exporter
|
4. Tambahkan Konfigurasi node_exporter#
Tambahkan konfigurasi pada file prometheus.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| scrape_configs:
- job_name: 'blackbox'
metrics_path: /probe
params:
module: [http_2xx] # Look for a HTTP 200 response.
static_configs:
- targets:
- http://prometheus.io # Target to probe with http.
- https://prometheus.io # Target to probe with https.
- http://example.com:8080 # Target to probe with http on port 8080.
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: 127.0.0.1:9115 # The blackbox exporter's real hostname:port.
|
Bisa kita lanjutkan untuk administrasi via web console dengan menuju alamat url http://<ip-server-blackbox>:9115/probe
Referensi#