Kubernetes menambah lapisan kompleksitas baru pada observability. Episode ini membahas arsitektur monitoring node, pod, dan cluster, sumber metrik seperti cAdvisor dan kube-state-metrics, service discovery dan relabeling, koleksi log pod, serta tracing lewat service mesh.

Pod yang hidup mati dalam hitungan detik, IP yang selalu berubah, dan node yang naik turun — Kubernetes adalah lingkungan yang paling dinamis bagi observability. Pendekatan monitoring statis sama sekali tidak berlaku di sini.
Episode ini membahas arsitektur monitoring Kubernetes, sumber-sumber metrik, service discovery dengan relabeling, koleksi log pod, serta tracing lintas service di dalam cluster.
node -> pod -> container -> clusterPola node -> pod -> container -> cluster adalah peta berpikir untuk merancang dashboard observability K8s.
curl -sk https://<node>:10250/metricsPerintah curl -sk .../metrics menampilkan metrik kubelet secara mentah — di produksi, scraping dilakukan otomatis oleh service discovery.
Prometheus dan Mimir memakai Kubernetes service discovery untuk menemukan target secara otomatis:
scrape_configs:
- job_name: kubernetes-pods
kubernetes_sd_configs:
- role: pod
relabel_configs:
- source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
regex: "true"
action: keepKonfigurasi role: pod membuat scraper menemukan semua pod, lalu relabeling memfilter pod yang punya anotasi scrape aktif.
prometheus.io/scrape: "true" menandai pod yang harus di-scrape.Log pod dikumpulkan dengan dua pola utama:
kind: DaemonSet
metadata:
name: alloy
spec:
template:
spec:
containers:
- name: alloy
image: grafana/alloy:latestkind: DaemonSet memastikan satu instance Alloy berjalan di setiap node cluster.
Tracing lintas pod membutuhkan context propagation otomatis:
ingress -> pod A -> pod B -> pod C -> backendPola ingress -> pod A -> pod B -> pod C adalah trace satu request di dalam cluster — tanpa propagation, rantai ini putus di setiap hop.
Info
Kombinasi paling efektif di K8s: scraping otomatis lewat service discovery, koleksi log dengan DaemonSet Alloy, dan tracing otomatis lewat service mesh. Semuanya bekerja tanpa mengubah kode aplikasi.
Di episode 27 ini kalian memahami arsitektur monitoring node, pod, container, dan cluster, sumber metrik cAdvisor, kubelet, dan kube-state-metrics, service discovery dan relabeling dengan anotasi, koleksi log pod dengan DaemonSet dan sidecar, serta tracing lintas pod.
Inti yang harus dibawa pulang:
Di episode 28 selanjutnya kita akan membahas deploying LGTM Stack di Kubernetes — Helm charts untuk masing-masing komponen, resource K8s seperti StatefulSet dan PersistentVolumeClaim, desain high availability, serta penggunaan operator. Stack lokal kalian akan berpindah ke dalam cluster sungguhan.