ElasticStack içerisinde ElasticSearch, Kibana, Beats ve Logstash’ı barındıran açık kaynak kodlu bir araçlar topluluğudur. Biz bu yazımızda size Kibana ve ElasticSearch ikilisinin nasıl kurulacağını anlatacağız.

ElasticSearch’ün biri ürünü olan Kibana, tıpkı Grafana gibi açık kaynaklı bir veri görselleştirme aracıdır. Daha önceki yazımızda Grafana‘nın Pardus’a nasıl kurulacağını anlatmıştık. Şimdi sıra Grafana alternatifi olan Kibana‘da.

Endüstri 4.0’la birlikte her geçen gün sayısı artan IoT (İnternet Of Things) cihazlarının oluşturduğu/sahadan topladığı verilerin daha anlaşılır ve insanlar için mantıklı görünmeleri ihtiyacı da artmaktadır. Genel olarak veriyi sahadan toplayan IoT cihazı, veriyi bir sunucuya gönderir ki bu sunucu büyük oranda bir veritabanıdır ve veriler bu veritabanında saklanırlar. Sonrasında veritabanındaki veriler görselleştirme aracı olan Kibana‘ya gönderilir ve/veya Kibana tarafından çekilerek görselleştirilir. Bu sayede çok sayıdaki, ilk bakışta anlamsız görünen rakam karmaşası, çok daha mantıklı ve insanlara fikir verebilecek grafiklere dönüşmüş olur. Özellikle endüstride gösterge panelleri (Dashboard) sıkça kullanılır ve fabrikalardaki tüm makinaların ne durumda oldukları, kayıp/boş zamanları, anlık veya belirli zaman aralıklarındaki üretim miktarları, verimlilik gibi çok değerli bilgileri bizlere sunarlar. İşte Kibana veya Grafana gibi araçlarla çok şık ve anlaşılır gösterge panelleri tasarlayabilirsiniz.

Şimdi hep beraber yeni bir Pardus Sunucu 21.0 kurulumunu yaptığımızı varsayalım. Ben örnek olması için IP adresimi 192.168.120.120 verdim. Alt ağ maskesi olarak /16 ağını (255.255.0.0) kullandım ve bu sayede IP adresi 192.168.0.0 ile 192.168.255.255 aralığındaki herkesin sunucuya erişmesine izin vermiş oldum. Son olarak ağ geçidimi 192.168.0.1 olarak ayarladım, siz kendi güvenlik duvarınızın ve/veya modem/router’ınızın IP adresini vermelisiniz. Tüm yazılarımızda zaten bunları sık sık anlattığımız için çok detaya inmeden doğrudan ayarların yapıldığı komutu verip geçeceğim.

sudo nano /etc/network/interfaces

Sonrasında sudo reboot ile sistemi yeniden başlatalım ve yeni ağ ayarlarının etkili olmasını sağlayalım. İsterseniz sudo systemctl restart networking komutuyla ağ servisini yeniden başlatarak da etkin hale getirebilirsiniz.

Şimdi sistemi her ne kadar yeni kurmuş olsak da, yeni yayınlanmış tüm güncellemeleri yapalım ve eğer kernel güncellemesi de varsa mutlaka sistemi sudo reboot ile yeniden başlatalım.

sudo apt update
sudo apt -y upgrade

Kibana ElasticSearch’ün bir ürünüdür ve çalışması için sisteminizde ElasticSearch’ün kurulu olması gerekir. Bu yazımızda sisteminize ElasticSearch ve Kibana’nın nasıl kurulacağını anlatacağız. Yazımızda tek bir Pardus Sunucu 21.0 kullanacağım için her iki paketi de aynı sunucuya kuracağım. Siz eğer farklı farklı sunuculara kurulum yapacaksanız, ayarları uygun şekilde değiştirmeniz gerekecektir.

Artık Kibana’yı kurmaya hazırız.

Kibana’yı Pardus’a iki farklı şekilde kurabiliriz (Birçok araç için geçerlidir bu durum)

  • İlki daha önceden Kibana tarafından derlenmiş çalışabilir dosyaları indirerek,
  • İkincisi Kibana’nın apt deposunu Pardus’a ekleyip apt install komutu ile

Biz yazımızda ikinci yöntemi tercih edeceğiz zira Kibana’nın yapımcısı her sürüm güncellendiğinde kendi depolarını da güncellemekte ve birbirleriyle bağlantılı olan paketlerin ayarlarını da uygun şekilde yapmaktadır. Bu sebeple biz de Pardus depolarına ilaveten Kibana deposunu da Pardus’a ekleyerek tıpkı sistemi güncelliyormuş gibi Kibana’yı da güncelleyebileceğiz.

Şimdi Kibana deposunu Pardus depolarımız arasına ekleyelim. Bunun için sırasıyla;

  • önce gnupg paketini kuralım ki GPG dosyalarını işleyebilelim, ayrıca Pardus’un güvenlik duvarını ufw kuralım,
  • Sonra Kibana‘nın GPG dosyasını indirip, Pardus’un güvenilir anahtarları arasına ekleyelim,
  • Ayrıca ihtiyacımız olacak apt-transport-https paketini kurarak güvenli sitelerden (https) indirme işlemlerini yapabilmemizi sağlayalı,
  • ve son olarak Kibana’nın yapımcısı olan ElacticSearch‘ün paket deposunu Pardus’a ekleyelim.
sudo apt install -y gnupg ufw
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo apt install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-8.x.list

Artık sistemimizi tekrar güncelleyerek Pardus dışında yeni eklediğimiz ElasticSearch deposundaki paketlerin de listesini alalım ve ElasticSearch ile Kibana‘yı tıpkı Pardus deposundaki bir program gibi kuralım.

sudo apt update
sudo apt install -y kibana elasticsearch

Bu yazı yayına hazırlandığı sırada Kibana son sürüm 8.1.0‘dı. Siz kurulumu ilerleyen zamanlarda yaptığınızda sürüm numarası farklılık gösterebilir.

ElasticSearch‘ün kurulumundan sonra ekrana aşağıdakine benzer bir özet gelecek. Bu ekranda size varsayılan kurulum parolası ve daha sonra size lazım olabilecek komutlar gösterilmektedir. Ekrandaki <password> yazan yerde elastic kullanıcısının parolası görüntülenmektedir. Bu parola yazının ilerleyen bölümlerinde ve sonrasında lazım olacağından, mutlaka bir yere not edilmelidir.

Şimdi sırasıyla;

  • Yaptığımız değişikliklerin (Yeni eklenen servislerin) etkili olması için daemon-reload yapıyoruz.
  • Kibana’yı etkinleştiriyoruz ki, Pardus her yeniden başladığında Kibana da otomatik başlasın.
  • Kibana’yı çalıştırıyoruz.
  • Kibana servisinin hafızada çalışıp çalışmadığını kontrol ediyoruz.
sudo systemctl daemon-reload
sudo systemctl enable kibana
sudo systemctl start kibana
sudo systemctl status kibana

Kibana servisi sizin de gördüğünüz gibi başarılı bir şekilde yüklenmiş ve çalışıyor. Bu ekrandan Q harfine basarak çıkabilirsiniz.

Şimdi kibana’ya erişebilmek için 5601 nolu portu ve elasticsearch için 9200 nolu portu erişime açalım ve güvenlik duvarını aktif edelim.

sudo ufw allow 5601
sudo ufw allow 9200
sudo ufw enable

Şimdi Kibana’nın ayarlarını sistemimize uygun hale getirelim.

Ayarlar /etc/kibana/kibana.yml dosyası aracılığı ile yapılır ve Kibana çalışırken bu dosyadaki ayarları okuyarak işe başlar. İlk olarak Kibana servisini durduralım ve sonra ayar dosyasını düzenleyelim.

sudo systemctl stop kibana
sudo nano /etc/kibana/kibana.yml

Bu dosyada aşağıda listelediğim satırları bulun ve önündeki # karakterini kaldırın ve ayarlarınızı kendinize uygun şekilde yapın. Ayar parametresi zaten ne işe yaradığını net bir şekilde anlattığı için ayrıca tek tek açıklamayacağım. Özetle Kibana‘nın web arayüzüne erişmek için ilgili portu, IP adresini, dış dünyadan erişebilmek için tam adresini, sunucu adını ve ElasticSearch‘ün IP adresi ile portunu ayarlıyoruz.

server.port: 5601
server.host: "192.168.120.120"
server.publicBaseUrl: "http://192.168.120.120:5601"
server.name: "Hamurcu"
elasticsearch.hosts: ["http://127.0.0.1:9200"]

Ayarları yaptıktan sonra Kibana servisini tekrar başlatmanız gerekir.

sudo systemctl start kibana

Artık web browserdan http://192.168.120.120:5601 yazarak Kibana‘nın web arayüzüne erişebilirsiniz.

İlk olarak karşınıza ElasticSearch ile Kibana arasındaki bağlantıyı sağlayacak olan token’ı (Anahtar’ı) girmenizi isteyen bir ekran gelecektir. Buraya komut satırında aşağıdaki komutu girerek elde edeceğiniz kod’u girmelisiniz.

sudo /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana

Bu komut size aşağıdakine benzer bir kod oluşturacaktır. Elbette sizin kurulumunuzda bu kod değişecektir. Komut satırından ekrana gelen kod’u kopyalayıp yukarıdaki ekrana yapıştırın ve Configure Elastic düğmesine basarak devam edin. Ben yaptığım örnek kurulumda aşağıdaki Token’ı oluşturup kullandım. Siz mutlaka kendi kurulumunuzdaki Token’ı kullanmalısınız.

eyJ2ZXIiOiI4LjEuMCIsImFkciI6WyIxOTIuMTY4LjEuMTIwOjkyMDAiXSwiZmdyIjoiYzU1YzJkYTdjNzg4NWM5NzY3MDY5N2Q3N2UxZDNlMTZiZTE3NDAwN2I0NmRkNDQwNGU4YmQw
M2NlMGU1MDYzZCIsImtleSI6IkgxTThnSDhCOFZWUVdSS3JqY0QyOk1vLV9aUjk4U2JPTUxwX1loQ2dYMUEifQ

Şimdi ekranınıza onay kodu gelecektir.

Buraya gireceğiniz onay kodunu yine komut satırında aşağıdaki komutla öğrenebilirsiniz.

sudo /usr/share/kibana/bin/kibana-verification-code

Şimdi komut satırından öğrendiğiniz onay kodunu web sayfasına girin ve Verify düğmesine basın.

Karşınıza Kibana giriş ekranı gelecektir. Bu ekranda size kullanıcı adı ve parolası sorulacaktır.

Varsayılan kullanıcı adı elastic ‘dir. Parola ise ElasticSearch’ün kurulumu sırasında ekrana özet olarak gösterilen paroladır.

Yukarıda size lazım olacak demiştim. O ekranda gösterilen <password> yazan kısmı Kibana kurulumu sırasında tam da burada kullanıyoruz.

Artık Kibana ve ElasticSearch sisteminize kuruldu, entegrasyonu sağlandı ve size hizmet etmeye hazırdır.

Add integration düğmesine basarak kullanmaya başlayabilirsiniz.

Kibana’ya görselleştirmesi için çeşitli kaynakların bağlanması gerekir. Bu yazının konusu sadece kurulum olduğu için burada değinmeyeceğim. Kibana’nın kendi belgelendirmesine bakarak ilgili eklentileri yapabilirsiniz.

Soru, görüş ve önerilerinizi forumlarımıza bekliyorum.

Kalın sağlıcakla.