Skip to content

Prometheus Blackbox Exporter’ın kurulumu ve yapılandırılması üzerine bir rehber. HTTP, HTTPS, DNS, TCP ve ICMP üzerinden servislerin ulaşılabilirliğini test etmek için konfigürasyon dosyaları ve örnek kullanım senaryoları içerir.

Notifications You must be signed in to change notification settings

atilladuran/prometheus-blackbox-exporter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 

Repository files navigation

✨ Kubernetes Ortamında Blackbox Exporter ile Servis İzleme ve Grafana Entegrasyonu

Kubernetes ortamında servislerinizi izlemek ve yanıt sürelerini takip etmek mi istiyorsunuz? Blackbox Exporter, Prometheus ile entegre çalışan ve HTTP, HTTPS, DNS, TCP gibi protokoller üzerinden servislerinize probe göndererek yanıt alabilirliğini ve gecikme sürelerini ölçen bir izleme aracıdır.

Bu yazıda Kubernetes ortamına Blackbox Exporter'i nasıl kuracağımızı, Prometheus ile entegrasyonunu ve Grafana ile nasıl görselleştireceğimizi anlatacağız. ✨🚀


🔍 1. Blackbox Exporter Nedir?

Blackbox Exporter, belirli hedeflere probe göndererek ulaşılabilirlik ve gecikme sürelerini analiz eden bir Prometheus Exporter'dır.

Desteklediği protokoller:

  • HTTP(S) - Web servislerinin durumunu ve yanıt sürelerini kontrol eder.
  • TCP - Servislerin port seviyesinde erişilebilir olup olmadığını kontrol eder.
  • DNS - Belirli alan adlarının doğru çözümleyip çözümlemediğini kontrol eder.
  • ICMP (Ping) - Hedefe ping atarak yanıt sürelerini ölçer.

Kubernetes ortamında Blackbox Exporter, servislerimizin durumunu takip etmek ve erken uyarı mekanizmaları oluşturmak için kritik bir rol oynar.


🚀 2. Kubernetes Üzerine Blackbox Exporter Kurulumu

Blackbox Exporter’ı Helm Chart kullanarak kolayca Kubernetes ortamımıza kurabiliriz.

🛠️ Helm ile Blackbox Exporter Yükleme

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
helm install blackbox-exporter prometheus-community/prometheus-blackbox-exporter -n monitoring --create-namespace

🔍 Kurulumu Doğrulama

kubectl get pods -n monitoring | grep blackbox
kubectl get svc -n monitoring | grep blackbox

Eğer pod Running durumundaysa, kurulum tamamlanmıştır. ✅


📃 3. Prometheus'un Blackbox Exporter’ı Scrape Etmesini Sağlama

Prometheus’un Blackbox Exporter'dan veri toplayabilmesi için eklememiz gereken scrape konfigurasyonu aşağıdaki gibidir:

Scrape Config Dosyası Hazırlama

modules:
  http_2xx:
    prober: http
    timeout: 5s
    http:
      valid_http_versions: ["HTTP/1.1", "HTTP/2"]
      method: GET

Bu dosyayı blackbox-scrape-config.yaml olarak kaydedelim.

Secret Olarak Yükleme

kubectl create secret generic additional-scrape-configs-secret -n monitoring \
  --from-file=additional-scrape-configs.yaml=blackbox-scrape-config.yaml

Prometheus konfigürasyonunu düzenleyerek bu Secret’ı kullanalım:

spec:
  additionalScrapeConfigs:
    secret:
      name: additional-scrape-configs-secret
      key: additional-scrape-configs.yaml

Değişikliklerin uygulanması için Prometheus podlarını yeniden başlatalım:

kubectl delete pod -l app.kubernetes.io/name=prometheus -n monitoring

📈 Prometheus Target Health sayfasında Blackbox Exporter'ın UP olarak görünmesi gerekir.

kubectl port-forward svc/prometheus-kube-prometheus-prometheus 9090 -n monitoring

🔗 http://localhost:9090/targets adresine giderek kontrol edebiliriz.


📊 4. Grafana Entegrasyonu

Blackbox Exporter verilerini Grafana ile görselleştirebiliriz.

🔍 Grafana'ya Blackbox Exporter Dashboard Eklemek

  1. Grafana’ya erişim sağlayalım:

    kubectl port-forward svc/prometheus-grafana 3000 -n monitoring

    🔗 Tarayıcıdan http://localhost:3000 adresine giderek Grafana’ya giriş yapalım.

  2. Dashboards → Import menüsüne girip Dashboard ID 7587’yi ekleyelim.

  3. Prometheus’u datasource olarak seçerek dashboardu import edelim.

PromQL Sorguları ile Özel Paneller

  • Uptime Durumu:
    probe_success{job="blackbox"}
  • Yanıt Süreleri:
    probe_duration_seconds{job="blackbox"}
  • HTTP Durum Kodları:
    probe_http_status_code{job="blackbox"}

🌟 Sonuç

Bu yazıda Kubernetes ortamında Blackbox Exporter’ı nasıl kurup Prometheus ile entegre edebileceğimizi ve Grafana ile verileri görselleştirebileceğimizi anlattık.

🎉 Artık servislerimizin ulaşılabilirliğini ve yanıt sürelerini detaylı bir şekilde takip edebiliriz! Grafana dashboard’ları ile anormallikleri kolayca fark edebilir ve aksiyon alabiliriz. 🚀

🛠️ Bir sonraki adım olarak, Blackbox Exporter’ı CI/CD pipeline'larınıza entegre etmeyi düşünebilirsiniz!

Eğer sorularınız veya eklemek istedikleriniz varsa yorumlarda buluşalım! ✨ 😊

About

Prometheus Blackbox Exporter’ın kurulumu ve yapılandırılması üzerine bir rehber. HTTP, HTTPS, DNS, TCP ve ICMP üzerinden servislerin ulaşılabilirliğini test etmek için konfigürasyon dosyaları ve örnek kullanım senaryoları içerir.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published