Grafana Nedir ?

Şule Ulaş
4 min readMar 28, 2024

--

Grafana, açık kaynaklı bir veri görselleştirme ve analiz platformudur. Prometheus, Mysql, PostgreSql, Clickhouse gibi birçok veri kaynağı dışında cloud tabanlı sistemlerden de veri alabilir. Bu verileri gerçek zamanlı olarak sorgulayabileceğiniz ve görselleştirebileceğiniz bir platform sunar. Esnek ve kullanıcı dostu arayüzüyle, Grafana özelleştirilebilir dashboardlar ve uyarılar oluşturma imkanı sağlar, bu da karmaşık sistemleri izlemek ve analiz etmek için tercih edilen bir çözüm haline gelmesini sağlar.

Özellikle monitoring amaçlı operasyonel işlemleri yürütmek ve zaman serisi veri tabanlarını sorgulamak/görselleştirmek için kullanılmaktadır. Variable yapısı üzerinden dashboarddaki veriyi analiz edebilirsiniz ancak standart yapısı interaktif dashboardları desteklememektedir. Plugin desteğinden yararlanarak interaktif dashboardlar tasarlanabilir. Bir sonraki yazımda bu konudan bahsedeceğim.

Grafana’nın açık kaynaklı çözümü dışında enterprise ve cloud gibi çözümleri de mevcut. İhtiyacınız dahilinde bu çözümlere de yönelebilirsiniz. Ancak bu yazımda açık kaynak versiyonu üzerinden ilerleyeceğim. Temel özellikleri, kurulumu ve basit dashboard yapımından bahsedeceğim.

Grafana’nın temel özelliklerini aşağıdaki gibi listeyelebiliriz.

  • Esnek Dashboard Oluşturma: Kullanıcının ihtiyacına göre özelleştirilebilir ve esnek bir şekilde dashboardlar oluşturmasını sağlar. Dashboardlar, birden çok veri kaynağından gelen verileri görsel olarak temsil etmek için farklı panelleri bir araya getirir.
  • Plugin Ekosistemi: Grafana, ek işlevsellik ve entegrasyonlar sağlayan canlı bir plugin ekosistemine sahiptir. Belirli veri kaynakları, paneller ve hatta özel görselleştirmeler için pluginleri kurarak dashboardlarınızı özelleştirebilirsiniz.
  • Geniş Veri Kaynağı Entegrasyonu: Bir çok farklı veri kaynağı ile entegre olabilir. Bunlar arasında zaman serisi veri tabanları (Prometheus, InfluxDB), ilişkisel veri tabanları (MySQL, PostgreSQL), log dataları ve bulut hizmetleri (AWS CloudWatch, Microsoft Azure Monitor) bulunur. Ayrıca standart veri kaynağı dışındaki veri kaynaklarına bağlanmak için pluginlerden destek alınarak özelleştirme yapılabilir. (Clikhouse)
  • Çeşitli Görselleştirme Seçenekleri: Farklı grafik türleri arasından seçim yapabilirsiniz. Ayrıca standart verdiği görselleştirme seçenekleri dışında diğer yazılımcılar tarafından geliştirilen görselleştirme seçeneklerini de plugin olarak yüklenip kullanabilirsiniz.
  • Alarm ve Uyarılar: Belirli veri eşiklerinin üzerine çıkıldığında veya altına düşüldüğünde kullanıcılara bildirim gönderme yeteneği sunar. Bu, kritik durumları hızla tespit etmek ve müdahale etmek için önemlidir.
  • Kullanıcı Yetkilendirme: Kullanıcıların ve grupların belirli dashboardları ve veri kaynaklarını görüntüleme, düzenleme veya yönetme yetkilerini yönetebilirsiniz.

Grafana Kurulumu ve Yapılandırması

Linux / RHEL üzerinde kurulum yapabilmek için farklı yollar mevcuttur. Ben manuel olarak paket seçerek ilerledim. Aşağıdaki adımlar izlenmelidir.

sudo yum update
sudo yum install -y https://dl.grafana.com/oss/release/grafana-10.4.1-1.x86_64.rpm
  • Kurulum işlemi tamamlandıktan sonra grafana servisini başlatmamız gerekiyor.
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
  • Servisleri başlattıktan sonra grafana arayüzüne erişimi test etmemiz gerekiyor. Default olarak 3000 portu üzerinden hizmet vermeye başlar. Web tarayıcı üzerinden http://localhost:3000 olarak erişmeye çalıştığınızda karşınıza login ekranı çıkacaktır. Varsayılan kullanıcı adı ve şifresi admindir. İlk girişten sonra şifrenizi değiştirmelisiniz. Bunu da aşağıdaki komut ile yapabilirsiniz.
grafana-cli admin reset-admin-password <new password>
Login Page

Grafana’nın kurulumu böylece tamamlanmış oldu. Burada bazı önemli dosya dizinlerini paylaşmak istiyorum. Çeşitli özelleştirme işlemleri, cli toolu olan grafana-cli komutlarını çalıştırmak ve grafana’nın metadatasına ulaşmak için bu dizinler üzerinde işlem yapılmalıdır.

  • config: /usr/local/etc/grafana/grafana.ini
  • homepath-grafana-cli: /usr/local/share/grafana
  • database: /usr/local/var/lib/grafana/grafana.db
  • plugins: /usr/local/var/lib/grafana/plugins
Welcome Page

Bu işlemler sonucunda kullanılabilir bir grafana ortamı oluşturduk. Artık sistem üzerinde dashboard oluşturabiliriz.

Dashboard Oluşturma

Öncelikle dashboard yapısından ve özelliklerinden biraz bahsetmek istiyorum. Grafana üzerindeki dashboardlar panellerden oluşur. Bu paneller aslında bizim görselleştirdiğimiz objelerdir. Dashboard üzerinde variable tanımlanabilir ve görselleştirdiğiniz veriyi filtreleyebilirsiniz. İlgili dashboardu belirli periyotlarda datayı yenileyecek şekilde ayarlayabilirsiniz. Dashboard özelinde yetkilendirme yapabilir, ilgili dashboardu export/import yapabilirsiniz.

Dashboard oluşturmak için öncelikle veri kaynağı eklememiz gerekiyor. Connections kısmından Data Source → Add Data Source olarak istediğimiz teknoloji üzerinden veri kaynağı tanımını yapıyoruz.

Add Data Source

Veri kaynağı oluşturulduktan sonra Dashboards →New →New Dashboard diyerek yeni dashboardumuzu oluşturuyoruz.

New Dashboard Create Step 1
New Dashboard Create Step 2

Add Visiualization diyerek oluşturduğumuz Data Source u seçip istediğimiz analizi ekleyebiliriz. Burada sol taraftaki Query kısmı ile sorgumuzu oluşturup sağ taraftaki Visualization kısmından istediğimiz görselleştirme aracını seçip, düzenlemeleri yaptıktan sonra dashboardumuz hazır hale gelecektir.

Chart Düzenleme

Bu makalede, Grafana’nın temel özelliklerini, kurulumunu, yapılandırmasını ve kullanımını detaylı bir şekilde ele aldık. Grafana’nın daha gelişmiş özelliklerini keşfetmek için uygulamayı deneyebilir ve bu yazının devamını inceleyebilirsiniz.

--

--