Exporter

š Apa itu Exporter dalam Prometheus?
š¹ Pengertian:
Exporter adalah komponen perantara yang mengumpulkan metrik dari suatu sistem atau aplikasi, lalu menyajikannya dalam format yang bisa dibaca oleh Prometheus (biasanya di endpoint /metrics
berformat text/plain
).
Intinya: Exporter = Penerjemah data sistem ā Format Prometheus
Prometheus tidak bisa langsung membaca metrik dari OS, database, router, atau service lain. Karena itu, dibutuhkan exporter yang:
- Mengambil data dari sumber asli (misal: sistem operasi, SNMP, MySQL)
- Mengubahnya ke format Prometheus
- Menyediakan endpoint HTTP yang bisa di-scrape
āļø Cara Kerja Exporter
[ Sistem atau Aplikasi ] ā [ Exporter ] ā (HTTP /metrics) ā [ Prometheus ]
Contoh:
[ Ubuntu Server ] ā [ node_exporter ] ā http://ip:9100/metrics ā [ Prometheus ]
š¦ Daftar Exporter Populer (beserta Penjelasan)
Exporter | Port | Digunakan untuk | Penjelasan |
---|---|---|---|
š¹ node_exporter | 9100 | Linux / server fisik & VM | Monitoring CPU, RAM, disk, filesystem, network, uptime, dsb |
š¹ blackbox_exporter | 9115 | Monitoring jaringan | Ping ICMP, HTTP(S), TCP, DNS, TLS certificate expiry |
š¹ cadvisor | 8080 | Docker container | Statistik CPU/mem/disk per-container |
š¹ mysqld_exporter | 9104 | MySQL / MariaDB | Metrik query rate, slow query, InnoDB stats, connection count |
š¹ postgres_exporter | 9187 | PostgreSQL | Sama seperti MySQL tapi untuk PostgreSQL |
š¹ snmp_exporter | 9116 | Perangkat jaringan (MikroTik, Cisco, Switch, dsb) | Membaca SNMP OID dan mengubahnya jadi metrik Prometheus |
š¹ windows_exporter (dulunya: wmi_exporter) | 9182 | Windows Server | CPU, RAM, disk, service status, uptime Windows |
š¹ nginx_exporter | 9113 | Nginx web server | Metrik connection count, traffic, request rate |
š¹ apache_exporter | 9117 | Apache2 web server | Sama seperti nginx_exporter tapi untuk Apache |
š¹ redis_exporter | 9121 | Redis | Hit/miss rate, key count, memory usage, etc |
š¹ mongodb_exporter | 9216 | MongoDB | Collection stats, connection usage, slow queries |
š¹ pushgateway | 9091 | Short-lived jobs | Menyimpan metrik dari script/batch yang tidak bisa discrape |
š¹ process_exporter | 9256 | Monitor proses tertentu | Hitung jumlah proses, CPU/mem proses tertentu (misal: nginx) |
š¹ kube-state-metrics | 8080 | Kubernetes | Status pod, node, deployment, dsb (complement cadvisor) |
š¹ haproxy_exporter | 9101 | HAProxy | Connection, queue, backend health |
š” Contoh Nyata Setup di Homelab
Target | Exporter | Tujuan |
---|---|---|
Proxmox Host | node_exporter + pve-exporter | CPU host, VM status, storage usage |
MikroTik | snmp_exporter | Monitoring bandwidth, interface, user |
Docker Host | cadvisor + node_exporter | Container resource usage |
MySQL di blog | mysqld_exporter | Query performance monitoring |
Web server | nginx_exporter | Response rate, status codes |
VPN Gateway | blackbox_exporter | Monitoring ping/tcp ke endpoint luar |
š ļø Tips Penggunaan Exporter
- Port default bisa diubah, tapi harus dicocokkan dengan
prometheus.yml
- Exporter biasanya jalan sebagai:
- Service systemd
- Container Docker
- DaemonSet di Kubernetes
- Selalu cek
/metrics
untuk memastikan exporter berjalan - Jika kamu butuh metrik dari sistem sendiri, bisa juga buat exporter custom pakai Python/Node.js/Go