Episode ini membangun observability produksi: Prometheus exporters untuk setiap service OpenStack, Grafana dashboard untuk API response dan hypervisor utilization, pemusatan log ke ELK Stack atau Grafana Loki, serta Alertmanager untuk notifikasi saat compute node down, queue overflow, dan OSD degraded.

Cluster produksi yang sehat tidak bisa dibiarkan berjalan tanpa mata. Di episode 17 kalian mengamankannya; episode 18 membuatnya teramati — sehingga kegagalan terdeteksi sebelum menjadi downtime, dan akar masalah ditemukan dalam menit bukan hari. Ini pekerjaan observability, dan di OpenStack ia dibangun dari tiga pilar: monitoring, logging, dan alerting.
Episode 18 membahas ketiganya secara nyata: Prometheus dan exporters untuk metrik service, Grafana untuk dashboard, ELK Stack atau Grafana Loki untuk log terpusat, dan Alertmanager untuk notifikasi proaktif saat kondisi kritis terjadi.
Prometheus mengumpulkan metrik dari exporters — agen yang mengekspos metrik dalam format yang dipahami Prometheus. Setiap layer OpenStack punya exporter-nya:
| Layer | Exporter |
|---|---|
| Host/Node | node_exporter |
| Service OpenStack | openstack-exporter |
| RabbitMQ | rabbitmq_exporter |
| Ceph | ceph-exporter |
| MySQL/Galera | mysqld_exporter |
OpenStack service → exporter → scrape (Prometheus) → Grafana
→ Alertmanageropenstack-exporter membaca API service dan mengekspos metrik seperti jumlah instance, status service, dan response time — inilah sumber data utama dashboard.
Grafana menjadi jendela visual seluruh metrik. Dashboard produksi OpenStack biasanya berisi:
openstack_exporter_instances{state="ACTIVE"}Perintah di atas contoh query PromQL — memunculkan jumlah instance aktif per project. Dengan dashboard Grafana, metrik-metrik ini divisualisasikan dalam satu layar.
Semua service OpenStack menulis log ke file masing-masing — mencari error di puluhan node berarti membuka puluhan file. Solusinya centralized logging: kumpulkan semua log ke satu tempat.
ELK Stack adalah kombinasi klasik:
curl -s 'http://kibana.example.com/api/console/proxy?path=_search&method=GET' \
-H 'Content-Type: application/json' \
-d '{"query":{"match":{"message":"ERROR"}}}'Alternatif modern adalah Grafana Loki — penyimpanan log yang terintegrasi langsung dengan ekosistem Grafana, memakai label alih-alih indeks, sehingga lebih ringan dioperasikan.
Prioritaskan log dari: nova-compute (error spawn instance), neutron-server dan agent (masalah network), cinder-volume (kegagalan attach), serta keystone (percobaan login gagal). Dengan log terpusat, pencarian error antar service menjadi satu perintah.
Metrik dan log tidak berguna jika tidak ada yang menindaklanjuti. Alertmanager mengubah metrik menjadi notifikasi — email, Slack, atau webhook. Aturan alert didefinisikan sebagai rule Prometheus:
groups:
- name: openstack.rules
rules:
- alert: ComputeNodeDown
expr: up{job="node"} == 0
for: 5m
labels:
severity: critical
annotations:
summary: "Compute node tidak merespons"Rule di atas memicu ComputeNodeDown ketika satu node tidak menjawab scrape selama 5 menit. for: 5m mencegah alert palsu dari lonjakan sesaat.
Tiga alert yang paling sering menyelamatkan produksi:
sudo docker exec rabbitmq rabbitmqctl list_queues name messages_readyPerintah sudo docker exec rabbitmq rabbitmqctl list_queues memeriksa antrean message langsung — jika messages_ready melonjak terus menerus, segera cek service yang bergantung padanya sebelum alert membunyikan alarm.
Episode 18 membangun mata dan telinga cluster: Prometheus dan exporters untuk metrik service, Grafana untuk dashboard API response, instance count, dan hypervisor utilization, ELK Stack atau Loki untuk log terpusat, serta Alertmanager dengan rule yang memicu notifikasi saat compute node down, queue overflow, dan OSD degraded.
Inti yang harus dibawa pulang:
Di episode 19 selanjutnya kita akan membahas Troubleshooting & Operational Maintenance — memakai perintah diagnostik seperti compute service list, network agent list, dan volume service list, menangani masalah umum seperti instance gagal spawn, network agent down, dan auth error, serta strategi day-2 operations seperti upgrade Kolla-Ansible dan pembersihan queue RabbitMQ.