“Modern Sistem İzleme Aracı: Prometheus ve Grafana Kullanımı”

aslıhan sönmez
Appcent
Published in
3 min readJan 3, 2024

--

Herkese merhaba,

Bu yazıda Prometheus ve Grafana hakkında genel bilgi verip bu iki araç hakkındaki kullanım amaçlarından biri olan alert sisteminden bahsedeceğim.

Prometheus:

Sistem İzleme ve Metrik Toplama:

  • Prometheus, açık kaynak kodlu bir sistem izleme ve zaman serisi veritabanıdır. Sistemlerin performansını izlemek, veri toplamak ve analiz etmek için kullanılır. Ölçeklenebilir ve esnek bir yapıya sahiptir.

Metrik Toplama ve Depolama:

  • Prometheus, çeşitli kaynaklardan metrikleri (örneğin, sunucu performansı, hizmet durumu, uygulama metrikleri) toplar ve bu verileri depolar. Metrikleri belirli bir sıklıkla (varsayılan olarak scrape_interval) hedeflenen hedeflerden çeker.

Sorgulama ve Görselleştirme:

  • Verileri sorgulama (PromQL) ve analiz etme yeteneği sağlar. Grafikler, tablolar ve raporlar oluşturmak için Prometheus’un kendi arayüzü mevcuttur.

Grafana:

Veri Görselleştirme ve Analiz:

  • Grafana, veri görselleştirme ve izleme platformudur. Farklı veri kaynaklarından gelen verileri alabilir ve bunları kullanıcı dostu görsellerle sunabilir. Grafikler, panolar ve görsel raporlar oluşturabilir.
  • Çeşitli Veri Kaynakları ile Entegrasyon: Grafana, Prometheus, InfluxDB, Elasticsearch, MySQL gibi farklı veri kaynaklarına entegre olabilir. Bu kaynaklardan gelen verileri görselleştirebilir ve analiz edebilir.

Alarm ve Uyarı Yönetimi:

  • Grafana, veri analizi üzerine odaklanmanın yanı sıra, alarm ve uyarılar oluşturarak kullanıcılara anlık bilgi sağlar. ( Prometheus’a entegre olmadan, Grafana’nın kendi alerting özelliğiyle alert üretmeniz mümkün olabilir. 7.0 sürümünden itibaren kendi alerting özelliğini de sunmaktadır.) Belirli eşik değerlerinin üzerine çıkan veya altına düşen durumlar için uyarılar oluşturulabilir.

Yukarıdaki edindiğimiz genel bilgilerden sonra, birazda kurulum aşamaları ve Grafana üzerinde örnek bir alert oluşturma kısmını inceleyelim.

Prometheus Kurulumu

  1. Prometheus’u yüklemek için, gerekli paketleri yükleyin. Resmi Prometheus indirme sayfasına gidin ve Linux “tar” dosyasının URL’sini kopyalayın. (Burada docker kullanmadan kurulum seçeneğini gösterdim, dilerseniz docker kullanarak da efektif bir şekilde indirebilirsiniz)
wget https://github.com/prometheus/prometheus/releases/download/vx.x.x/prometheus-x.x.x.linux-amd64.tar.gz

2) İndirilen arşiv dosyasını çıkartın.

tar xvfz prometheus-x.x.x.linux-amd64.tar.gz

3) Yapılandırma ve çalıştırma.

/usr/local/bin/prometheus --config.file=/path/to/prometheus.yml

4)Varsayılan olarak, Prometheus, http://localhost:9090 adresinden erişilebilir. Bu adresi tarayıcınızda açarak Prometheus arayüzüne erişebilirsiniz. Eğer Prometheus’u bir servis olarak çalıştırmak isterseniz, systemd, init.d veya benzeri bir araçla bir servis olarak yapılandırabilirsiniz.

Grafana Kurulumu

1)Grafanayı yüklemek için gerekli paketleri yükleyin.

sudo apt-get install -y apt-transport-https software-properties-common wget

2)GPG key import

sudo mkdir -p /etc/apt/keyrings/
wget -q -O - https://apt.grafana.com/gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/grafana.gpg > /dev/null

3) Kararlı sürümler için bir depo eklemek için aşağıdaki komutu çalıştırın.

echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list

4) Beta sürümler için bir depo eklemek için aşağıdaki komutu çalıştırın.

echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com beta main" | sudo tee -a /etc/apt/sources.list.d/grafana.list

5)Mevcut paketlerin listesini güncellemek için aşağıdaki komutu çalıştırın.


sudo apt-get update

6)Grafana OSS’ini yüklemek için aşağıdaki komutu çalıştırın.


sudo apt-get install grafana

7) Grafana sunucusunu başlatmak ve otomatik olarak başlangıçta çalışmasını sağlamak için aşağıdaki komutları kullanın.

sudo systemctl start grafana-server
sudo systemctl enable grafana-server

8) Servis statusunu kontrol ediyoruz.

sudo systemctl status grafana-server --no-pager -l

Gerekli kurulumları yaptıktan sonra,

http://your_server_ip:3000 adresine gidilir ve grafana ara yüzüne ulaşılır.

Sonrasında örneğin ; alert eklediğimiz bir senaryoya bakacak olursak alert rules kısmından alerts -> create alert diyip, conditions, notification ve for(süre) ayarlamaları yapılır.

Eklenmiş bir alert aşağıdaki gibi gözükecektir.

Bu yazıda Prometheus ve Grafana hakkında genel bir bilgi verip kurulum aşamalarından bahsettik ve kullanım amaçlarından bir tanesi olan alert sistemi üzerinde durduk. Bir sonraki yazımda prometheus üzerinde alarm yapılandırmasını detaylı bir şekilde inceleyeceğiz. Görüşmek üzere. :)

--

--