Log depolama ve analiz

Her gün çalıştığımız cihazlar ve uygulamalar yaptıkları işlerin ve karşılaştıkları olayların kaydını log dediğimiz yapılarla tutuyorlar. Bu logları geçmişte yaşanan bir durumu incelemek için kullanabiliyoruz. Bu sayede daha dayanıklı uygulamalar geliştirebiliyor, ya da herhangi bir işlemin kim tarafından hangi koşullarda gerçekleştiğini bulabiliyoruz.

Cihazlar ve Loglar

Ancak kullanıcı sayısı ve dolayısıyla sistemlerdeki yoğunluk arttıkça bu kayıtların aynı cihazlar üzerinde tutulması hem yazma yükü, hem de depolama kapasitesi açısından, bir problem haline geliyor. Örneğin ağ anahtarları gibi birçok network cihazı kritik loglar üretebilse de bunları depolayabileceği bir alana sahip değil.

Diğer taraftan kullandığımız uygulamaların ve sistemlerin sayısı arttıkça farklı yerlerde duran farklı tip loglara erişim de bir problem haline geliyor. Başta standart araçlarla okunabilen birkaç basit log dosyası söz konusuyken, bir süre sonra farklı yerlerde farklı formatlarda duran ve hepsine ayrıca erişimin denetlenmesi gerektiği bir ortam oluşuyor. Bu da loglardan fayda sağlanmasının önünde büyük bir engel haline geliyor.

Bu verilerin taşınabilmesi, tek yerde toplanması, dönüştürülmesi, sorgulanabilmesi, hatta görselleştirilmesi ve bazı çıkarımlar yapılıp alarm üretilmesi için ELK, Splunk, Loggly, Graylog, Mezmo (LogDNA) gibi birçok farklı araç mevcut. Bu araçlar

  • Log indeksleme ve hızlı erişim
  • Siber güvenlik kapsamında SIEM / SOAR
  • Log ilişkilendirme (log correlation)
  • Çeşitli veri kayıt ve depolama mevzuatına uyum

gibi farklı konulara odaklı çalışabiliyor. Ancak hepsinin birkaç ortak ihtiyacı var:

  • Verilerin güvenli iletimi
  • Dayanıklı bir yerde depolama
  • Servislerin yedekli ve sürekli çalışması

Bu ihtiyaçların tamamı ve hatta daha fazlası bulut sağlayıcılarda çözülmüş, kullanıma hazır durumda. Ancak maliyet ya da veri kayıt kuralları gereği bulut ortamlarının kullanılamadığı yerler için aynı şeyi söylemek mümkün değil.

Halen kendi sistemlerini çalıştırmak zorunda olanlar genelde mevcut altyapılarını kullanarak sanal makineler ve sanal disklerin olduğu bir mimari ile çalışıyor:

Sanallaştırma ve SAN

Zaten elinde sanallaştırma ve SAN altyapısı hazır olan yerler için gayet makul bir yaklaşım. Ancak sistemler ve üretilen log miktarı büyüdükçe depolama ihtiyaçları, işleyen sistemlere göre katlanarak artıyor ve bu durum SAN sistemlerinin üzerinde amaçları dışında bir yük olmaya başlıyor. Diğer bir deyişle log işinin astarı yüzünden pahalıya geliyor.

Bunun kuşkusuz farkında olan yazılımlar doğal olarak bu verinin büyük kısmı için nesne depolama kullanmayı tercih ediyorlar. Splunk SmartStore, Loggly ve Mezmo Archiving gibi ek özellikler logların bir kısmını nesne depolamaya aktarmayı sağlıyor. Wise Cluster O³, S3 uyumluluğu sayesinde bu tip kurulum senaryolarını doğrudan destekliyor. Böylece hem mevcut altyapılar rahatlıyor hem de tüm veriler kendilerine uygun yerde depolanarak ciddi maliyet avantajları sağlanıyor.

Wise ile arşivleme

Ancak Wise Cluster O³ ile yapılabilecekler bununla sınırlı değil. Her kuruluma dahil, kullanıma hazır gelen Loki, Kubernetes üzerinde ve tamamen nesne depolama ile çalışan yeni bir alternatif. Bu sayede Wise Cluster O³, tüm sistemi bir adım ileri taşıyarak log toplama ve analiz işinin tamamı için tek çözüm olabiliyor. Üstelik tüm servisleri sürekli erişilebilir (HA) tutarken ve hepsinin tek altyapıyla ölçeklenmesini sağlarken.

Wise üzerinde Loki

Loki, Wise Cluster standart servislerinden biri olduğu için yapılması gereken tek şey log üreten uygulamaları buraya yönlendirmek:

  • Syslog destekleyen ağ ve güvenlik cihazları, Wise Cluster’da yedekli çalışan log toplama servislerine doğrudan bağlanabiliyor.
  • Linux/UNIX/BSD sunucular benzer şekilde syslog ile gönderebiliyor.
  • Windows Olay Günlüğü için ilgili sistemlere kurulacak fluent-bit gibi bir servis, istenen kanalları ayrıştırıp verileri aynı log toplama servisine iletebiliyor.
  • Loglarını sadece dosyaya yazabilen uygulamalar için bu dosyaları sürekli takip edip Wise Cluster’a gönderecek ek uygulamalar kullanılabiliyor.

Loglar toplandıktan sonra da bunları araştırmanın, filtrelemenin ya da gerçek zamanlı izlemenin en kolay yolu tabii ki yine Wise Cluster ile beraber gelen Grafana. Serbest analizlerin yanı sıra standart sorgular için hazırlanacak dashboard’lar sayesinde sıklıkla incelenecek loglara hızla erişim sağlanıyor.

Grafana içinde loki

Son olarak loglara bakılarak anlaşılabilecek herhangi bir durum için alarm kuralları eklenebiliyor. Bu sayede loki, topladığı logları sizin yerinize sürekli takip ediyor ve kurala uyan herhangi bir durum oluştuğunda bunu size bildiriyor. Bu alarmları yöneten ve gerekli bildirimleri yapan Prometheus AlertManager servisi ise yine Wise Cluster üzerinde sürekli aktif ve yedekli olarak çalışıyor.

Alarmlar

Böylece bütün problem tek bir ölçeklenebilir sistemle tek seferde çözülmüş oluyor!

Aklınıza takılan bir yer mi var?

Kendi işinizin çözümü için şimdi bize ulaşın!