EKS İçin Observability: Prometheus ve Grafana Rehberi
EKS İçin Observability: Prometheus ve Grafana
Kubernetes (EKS) üzerinde çalışan uygulamalarınızın sağlığını izlemek (monitoring), sorunları tespit etmek ve çözmek için hayati önem taşır. Bu alandaki altın standart, açık kaynaklı Prometheus ve Grafana ikilisidir.
Prometheus Nedir?
Prometheus, zaman serisi verilerini (time-series data) toplayan ve saklayan bir izleme sistemidir.
- Pull Model: Prometheus, hedeflerine (podlar, node'lar) gidip "Metriklerini ver" der (Scraping).
- Alertmanager: Belirli kurallara göre (örn: CPU > %80) alarm üretir ve Slack/Email gibi kanallara gönderir.
Grafana Nedir?
Grafana, Prometheus'tan aldığı verileri muhteşem grafiklere ve dashboard'lara dönüştüren bir görselleştirme aracıdır.
EKS Üzerinde Kurulum: Kube-Prometheus-Stack
Bu ikiliyi tek tek kurmak zordur. Topluluk tarafından geliştirilen kube-prometheus-stack Helm chart'ı, Prometheus, Grafana, Alertmanager ve Node Exporter'ı tek pakette sunar.
Kurulum Adımları
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install monitoring prometheus-community/kube-prometheus-stack -n monitoring --create-namespace
Bu komutla şunlara sahip olursunuz:
- Prometheus Operator: Prometheus'u yönetmeyi kolaylaştırır.
- ServiceMonitor: Hangi servislerin izleneceğini otomatik keşfeder.
- Hazır Dashboardlar: Kubernetes Cluster, Node, Pod performansını gösteren onlarca hazır Grafana panosu.
Kalıcı Depolama (Persistence)
Prometheus verileri pod içinde tutulur. Pod ölürse veriler kaybolur. Prodüksiyon ortamında, Prometheus için Amazon EBS tabanlı bir Persistent Volume (PV) tanımlamalısınız.
Alternatif olarak, verileri uzun süreli saklamak için Amazon Managed Service for Prometheus (AMP) kullanabilirsiniz. Bu servis, Prometheus sunucusunu yönetme derdini ortadan kaldırır ve yüksek ölçeklenebilirlik sağlar.
EKS kümelerinizde görünürlük sağlamak, sorunları müşteri fark etmeden çözmenizi sağlar.