Prometheus ve Grafana Nedir? Temel Kavramlar ve Neden Önemlidir?

İzleme dünyasında Prometheus, zaman serisi veritabanı (TSDB) olarak öne çıkıyor. Açık kaynaklı bu sistem, metrik toplama, sorgulama ve alarm oluşturma işlevlerini tek bir çatı altında sunar. Grafana ise bu metrikleri görselleştirerek, panolar (dashboard) aracılığıyla anlaşılır bir biçimde sunar. Birlikte çalıştıklarında, sistem performansını %70’e kadar artırabilir, sorunları anında tespit edip müdahale süresini 3 kat azaltabilirsiniz.
Günümüzde bulut ve VDS (Virtual Dedicated Server) ortamları yaygınlaştıkça, izleme ihtiyacı da artıyor. Örneğin, AMD Ryzen VDS sunucular yüksek işlem gücü sağlarken, metrik toplama eksikliği performans kaybına yol açabilir. Prometheus, bu boşluğu doldurur; Grafana ise verileri grafiksel olarak sunarak ekiplerin hızlı karar almasını sağlar.
Prometheus’un Mimari Yapısı ve Çalışma Prensibi
Prometheus, dört ana bileşenden oluşur: Prometheus Server, Exporters, Alertmanager ve Pushgateway. Server, belirli aralıklarla hedef sistemlerden (targets) HTTP üzerinden metrik çeker. Bu hedefler genellikle /metrics endpoint’i sunan uygulamalar veya exporter adı verilen ara katmanlardır. Exporter’lar, MySQL, Nginx, Node.js gibi popüler servislerin metriklerini Prometheus formatına dönüştürür.
Toplanan veriler, zaman damgası (timestamp) ile birlikte saklanır ve PromQL (Prometheus Query Language) ile sorgulanır. Örneğin, rate(http_requests_total[5m]) ifadesi son 5 dakikadaki istek oranını verir. Bu esneklik, karmaşık analizleri bile basit bir satırla yapabilmenizi sağlar.
Grafana ile Panolar Oluşturma: Görselleştirmenin Gücü
Grafana, Prometheus dışındaki veri kaynaklarını da destekler; InfluxDB, Elasticsearch ve hatta web hosting paketleri gibi hizmetlerden gelen logları bile birleştirir. Panolar, sürükle-bırak arayüzü sayesinde teknik olmayan ekipler tarafından bile kolayca oluşturulabilir.
Grafana’da panel oluştururken dikkat edilmesi gereken iki nokta vardır: Veri Kaynağı Ayarı ve Uyarı (Alert) Tanımları. Veri kaynağı olarak Prometheus’u eklediğinizde, sorgularınızı Grafana’nın panel editöründe doğrudan yazabilirsiniz. Uyarı tanımları ise Grafana’nın kendi alerting sistemini ya da dışa yönlendirilmiş Alertmanager entegrasyonunu kullanarak kritik durumları anında bildirebilir.
Kurulum ve Konfigürasyon: Adım Adım Prometheus + Grafana

Bu bölümde, bir Intel i9 VDS sunucu üzerinde Prometheus ve Grafana’nın nasıl kurulacağını detaylı olarak anlatacağız.
- Sunucu Hazırlığı: İşletim sistemi olarak Ubuntu 22.04 LTS önerilir. Güncellemeleri
sudo apt update && sudo apt upgrade -ykomutlarıyla tamamlayın. - Prometheus İndir ve Çalıştır:
wget https://github.com/prometheus/prometheus/releases/download/v2.48.0/prometheus-2.48.0.linux-amd64.tar.gzardındantar xvfz prometheus-*.tar.gzve./prometheus --config.file=prometheus.ymlkomutlarıyla başlatın. - Node Exporter Kurulumu: Sistem metriklerini toplamak için
wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gzve benzeri adımlarla kurun../node_exporterhizmetini background’da çalıştırın. - Grafana’yı Yükle:
sudo apt install -y apt-transport-httpsardından Grafana reposunu ekleyin vesudo apt install grafanakomutuyla kurun.sudo systemctl start grafana-server && sudo systemctl enable grafana-serverile servisi aktif edin. - Grafana’da Prometheus’u Veri Kaynağı Olarak Ekleyin: Tarayıcıda
http://adresine gidin, admin/admin ile giriş yapın, “Add data source” → Prometheus → URL olarak:3000 http://localhost:9090girin ve kaydedin. - Dashboard Oluşturun: “Create” → “Dashboard” → “Add new panel”. Sorgu kutusuna
node_cpu_seconds_totalgibi bir metrik yazın, grafik tipini seçin ve panoyu kaydedin.
Bu adımları tamamladığınızda, sisteminiz gerçek zamanlı metrik toplama ve görselleştirme yeteneğine kavuşur. İhtiyacınıza göre ek exporter’lar (MySQL, Nginx, Docker) kurarak kapsamı genişletebilirsiniz.
Avantaj ve Dezavantaj Karşılaştırması
| Özellik | Avantaj | Dezavantaj |
|---|---|---|
| Kurulum Kolaylığı | Docker ve paket yöneticileri sayesinde birkaç komutla çalışır. | İlk konfigürasyon sırasında doğru hedeflerin belirlenmesi zaman alabilir. |
| Performans | Yüksek veri hacmi için optimize edilmiş, düşük gecikmeli sorgular. | Uzun süreli saklama (retention) politikaları disk alanını hızlı tüketir. |
| Genişletilebilirlik | Binlerce exporter ve dış veri kaynağı desteği. | Özelleştirilmiş exporter geliştirmek Go bilgisi gerektirebilir. |
| Uyarı Yönetimi | Alertmanager ile esnek yönlendirme ve susturma kuralları. | Grafana’nın yerel alert sistemi sınırlı özellik sunar. |
| Topluluk ve Destek | Aktif açık kaynak topluluğu, bol dokümantasyon. | Kompleks senaryolarda resmi destek eksikliği. |
Gerçek Dünya Senaryosu: E-Ticaret Sitesi İzleme
Bir e-ticaret hosting ortamında, sipariş akışı, ödeme gateway’i ve stok yönetimi kritik bileşenlerdir. Prometheus ile her mikroservisin yanıt süresi, CPU ve bellek tüketimi izlenebilir. Grafana’da ise “Sipariş İşleme Süresi” ve “Ödeme Başarısızlık Oranı” gibi panolar oluşturularak, yöneticilerin anlık karar alması sağlanır.
Örneğin, rate(payment_failed_total[5m]) grafiği aniden yükseldiğinde, Alertmanager üzerinden Slack ya da e-posta ile uyarı gönderilir. Bu sayede, ödeme sağlayıcıdaki bir kesinti dakikalar içinde tespit edilip, alternatif bir yol devreye alınabilir. Sonuç olarak, müşteri memnuniyeti %15 artar ve potansiyel gelir kaybı önlenir.
Sıkça Sorulan Sorular
Prometheus ve Grafana aynı sunucuda çalıştırılabilir mi?
Evet, düşük ila orta ölçekli ortamlarda her iki hizmeti aynı VDS üzerinde çalıştırmak kaynak kullanımını optimize eder. Ancak yüksek trafikli sistemlerde ayrı sunuculara dağıtmak performansı artırır.
Prometheus verileri ne kadar süre saklanmalı?
Bu, kullanım senaryonuza bağlıdır. Genellikle 15‑30 gün arası saklama, trend analizi için yeterlidir. Daha uzun saklama gerekiyorsa, verileri remote_write ile bir uzun vadeli depolama (Thanos, Cortex) yönlendirebilirsiniz.
Grafana’da uyarı (alert) nasıl yapılandırılır?
Panel editöründe “Alert” sekmesine geçin, koşulu tanımlayın (örneğin, CPU %90 üzeri 5 dk). Sonra “Notification channel” ekleyerek e-posta, Slack veya webhook gibi hedefleri seçin.
Exporters nedir ve nasıl kurulur?
Exporters, uygulamaların Prometheus formatında metrik sunmasını sağlayan küçük ajanlardır. Node Exporter, MySQL Exporter, Nginx Exporter gibi popüler seçenekler resmi GitHub sayfalarından indirilebilir ve sistem servisine eklenebilir.
Sonuç ve Bir Sonraki Adımınız
Prometheus ve Grafana, modern altyapıların kalbinde yer alarak, performans izleme ve sorun tespiti süreçlerini %70’e kadar iyileştirir. Kurulum adımlarını tamamladıktan sonra, ilk dashboard’unuzu oluşturarak kritik metrikleri izlemeye başlayın. İlerleyen aşamalarda, VDS sunucu paketleri ile ölçeklendirme yapabilir, fiziksel sunucu geçişi planlayarak daha yüksek veri hacimlerini sorunsuz yönetebilirsiniz.
Unutmayın, izleme bir kere kurulur ve unutulur demek değildir; periyodik olarak hedefleri güncellemek, alert kurallarını revize etmek ve veri saklama politikalarını gözden geçirmek, sisteminizin sağlıklı kalmasını sağlar. Şimdi, Prometheus ve Grafana’yı kurup, kendi izleme panonuzu oluşturma zamanı!