ELK — Kibana ile Veri Görselleştirme

Emre savaş
inventiv
Published in
4 min readJun 25, 2021

--

Bu yazımızda Elasticsearch indeksi üzerinde veri görselleştirme ve analizi için ELK üçlemesinden olan Kibana’yı ele alacağız.

Kibana, Elasticsearch’ün üzerinden çalışan, kullanıcılara verileri analiz etme, görselleştirme ve izleme olanağı sunan bir araçtır.

Veri görselleştirme işlemine geçmeden önce sistem üzerinde Elasticsearch’ün ve Kibana’nın kurulu olması gerekmektedir. Kurulumları tamamlamadıysanız “Elastic Downloads” adresinden ilgili kurulum dosyalarına ulaşabilirsiniz. Elasticsearch kurulumunun anlatıldığı bu yazıdan daha detaylı bilgiye ulaşabilirsiniz.

Kibana Kurulum

Kurulum dosyalarını indirdikten sonra zip’ten çıkarılarak kibana.bat dosyası çalıştırılır. Tarayıcı üzerinden “http://localhost:5601” url adresine gidilerek Kibana’nın ulaşılabilir olduğu kontrol edilir. Herhangi bir hata ile karşılaşılmadı ise artık Kibana’yı servis olarak ayarlamak mümkün.

Bu işlemi kolaylaştırmak için nssm(Non Sucking Service Manager) kullanılabilir. nssm adresinden kurulum dosyalarına ulaşılır. Bu uygulamada nssm’in kurulduğu dosya yoluna CMD aracılığıyla erişip işletim sistemine uygun olan versiyon -örnekte win64- klasörüne girdikten sonra “nssm install kibana” komutu girilmelidir. Açılan pencerede path olarak kibana/bin yolu içerisindeki kibana.bat dosyasını seçip install service denildikten sonra Kibana servis olarak kullanıma hazır duruma gelmektedir.

Not: Servislerin manuel mi yoksa otomatik mi çalışması istenilene göre Windows servis ayarlarından yapılmalıdır.

Kibana Üzerinde İndeks Tanımlanması

Kibana kurulumunun yazının başında belirtilen şekilde yapıldığı varsayılarak ayarlanan port üzerinden Kibana’ya erişilir. Kibana’ya özel bir port ayarlanmadıysa default olarak “5601” portundan hizmet verir. İzlenmek(Monitoring) istenen indeksin Kibana üzerinde de oluşturulması gereklidir. Bunun için öncelikle Management altından Stack Management kısmına gidilir.

Daha sonra açılan menüden Index Patterns seçeneğine tıklanır.

Create Index Pattern seçeneğine tıkladıktan sonra açılan ekrandan indeks pattern isimlendirilir.

Burada Elasticsearch içerisinde oluşturulan indeks isminin aynısı ile bir indeks oluşturulması gerekmektedir. Eğer indeks ismi doğru girildiyse, Kibana eşleşme yakaladığını belirtecektir.

İlgili indeks eklendikten sonra Kibana’nın özelliklerinden yararlanmaya başlanılabilir.

Kibana’da Veri Görselleştirme ve İzleme

Verileri görselleştirmek için Dashboard ve panel araçlarından faydalanılabilir. Menüden “Dashboard” butonuna tıklayarak kayıtlı Dashboard’ların sayfasına ulaşabiliriz.

Yeni bir Dashboard oluşturmak için “Create Dashboard” butonuna tıklanmalıdır.

Açılan Dashboard düzenleme sayfasında ihtiyaca uygun yeni paneller eklenebilir ve filtreleme seçenekleri kullanılabilmektedir.

“Create Panel” butonuna tıkladıktan sonra “Maps” seçilerek indeks üzerindeki koordinat(GeoLocation) bilgisine göre harita üzerinde dağılım gösterilmektedir.

Örnek veri kümesindeki üyelerin şehirlere göre dağılımının Bar grafik olarak sunulması için yapılması gerekilen konfigürasyonlar aşağıdaki şekildeki gibidir. Yatay eksende “CityName” ve dikey eksende “Count” parametreleri seçilerek bar grafiği oluşturulur.

Yatay eksende “Count” parametresi seçildikten sonra dikey eksen ayarlarında “Order By” parametresi içerisinde “Count of Record” parametresi aktif hale gelmektedir. Bu seçenek ile grafik üzerinde sıralamayı kayıt sayısına göre ayarlamak mümkündür.

Farklı grafikler oluşturmak istendiği zaman alttaki şekilde gibi “Chart Type” alanından ilgili tip seçilerek görselleştirme yapılabilir. “Donut” tipinde oluşturulan grafikte Çankaya ilçesine ait mahallelerde bulunan üye oranları bilgisi sunulmaktadır. “Slice by” ayarında bulunan “Number of values” seçeneğinde Donut üzerinde bulunacak kısım sayısı belirlenmektedir.

Örnek veri kümesi üzerinde İstanbul ilindeki ilçelere göre üyelerin dağılımını bu kez Treemap şeklinde aşağıdaki konfigürasyonlar ile görüntülenebilir.

Özetle; Kibana verinin görselleştirilmesi ve izlenmesi için onlarca farklı seçenek sunmakta. Yazımızda örnek veri kümesinin harita üzerinde sunulması ve bar chart, donut chart, treemap tiplerinde görselleştirilmesi gerçekleştirildi. Sizde Kibana’yı daha fazla kurcalayarak ihtiyaca yönelik çok daha farklı grafikler oluşturabilirsiniz :)

Yazıdaki katkılarından dolayı Doğukan Kukul’a ve İlker Güldalı’ya teşekkürler.

--

--

Emre savaş
inventiv

Software Engineer