top of page
background.jpg


 

BLUECAT MONDAY | Enterprise DNS Series

30 Ağu
3 dakikada okunur

Güncelleme tarihi: 3 gün önce

Issue #11


Service Discovery


 

Uygulamalar Değişirken, Servisler Birbirini Nasıl Bulacak?

 

Eskiden kurumsal altyapılar daha öngörülebilirdi.

 

Bir uygulama belirli bir sunucuda çalışır, sunucunun IP adresi uzun süre değişmez ve servisler arasındaki bağlantılar büyük ölçüde statik olarak yönetilebilirdi.

 

Bugün ise durum tamamen farklı.

 

Sanal makineler dakikalar içinde oluşturuluyor ve kaldırılıyor. Container'lar sürekli yeniden ayağa kalkıyor. Kubernetes ortamlarında workload'lar farklı node'lara taşınıyor. Cloud kaynaklarının IP adresleri değişebiliyor. Uygulamalar yüzlerce mikroservisten oluşabiliyor.

 

Böyle bir ortamda kritik soru artık yalnızca:

 

“Bu servisin IP adresi nedir?” değil.

 

Asıl soru:

 

“İhtiyacım olan servis şu anda nerede ve ona nasıl ulaşacağım?”

 

İşte Service Discovery bu problemi çözer.

 

Service Discovery Nedir?

 

Service Discovery, uygulamaların ve sistemlerin ihtiyaç duydukları servisleri manuel IP adresleri veya statik yapılandırmalar olmadan dinamik olarak bulabilmesini sağlayan mekanizmadır.

 

Bir servis devreye girdiğinde konumu kaydedilir.

 

Konumu değiştiğinde bilgi güncellenir.

 

Servis kaldırıldığında artık erişilebilir olmadığı sisteme yansıtılır.

 

Diğer uygulamalar ise sürekli değişen IP adreslerini bilmek zorunda kalmadan ilgili servise ulaşabilir.

 

Böylece altyapının fiziksel veya sanal topolojisi değişirken uygulamalar arasındaki iletişim devam eder.

 

Büyüteçle vurgulanan servis keşfi merkezini bulut, Kubernetes, veri merkezi ve uygulama servislerine bağlayan şema.

Statik DNS Kayıtları Neden Yetmeyebilir?

 

Modern altyapılarda değişimin hızı, geleneksel manuel DNS operasyonlarının çok üzerine çıkabilir.

 

Bir Kubernetes ortamında aynı servis gün içerisinde birçok kez farklı IP adresleriyle çalışabilir.

 

Auto-scaling nedeniyle yeni instance'lar saniyeler içerisinde oluşturulabilir.

 

Bir cloud workload'u başka bir availability zone'a taşınabilir.

 

Bir container kapanıp başka bir node üzerinde yeniden başlayabilir.

 

Bu değişikliklerin her biri manuel DNS işlemi gerektirirse operasyon hem yavaşlar hem de hata riski yükselir.

 

Service Discovery'nin amacı DNS'i ortadan kaldırmak değildir.

 

Tam tersine:

 

Dinamik altyapı ile DNS arasında sürekli güncellenen bir bağ kurmaktır.

 

Service Discovery Nasıl Çalışır?

 

Modern bir Service Discovery yaklaşımında servislerin yaşam döngüsü otomatik olarak takip edilir.

 

Yeni bir servis oluşturulduğunda sisteme kaydedilir.

 

Servisin konumu değiştiğinde ilgili kayıt güncellenir.

 

Yeni instance'lar devreye girdiğinde erişilebilir hale gelir.

 

Artık kullanılmayan servisler sistemden kaldırılır.

 

Uygulamalar ise servis adına sorgu yaparak o anda erişilebilir olan doğru kaynağa yönlendirilir.

 

Bu sayede:

 

·       Dinamik servis kaydı,

·       Otomatik DNS güncellemesi,

·       Güncel servis envanteri,

·       Daha hızlı uygulama iletişimi,

·       Daha az manuel müdahale,

·       Daha düşük yanlış yapılandırma riski

 

sağlanabilir.

 

Kubernetes ve Microservices Dünyasında Neden Kritik?

 

Microservices mimarisinde tek bir uygulama onlarca hatta yüzlerce bağımsız servisten oluşabilir.

 

Bu servislerin her birinin yaşam döngüsü birbirinden farklıdır.

 

Bir servis ölçeklenirken beş yeni instance oluşabilir.

 

Bir diğeri farklı bir node'a taşınabilir.

 

Başka bir servis güncelleme nedeniyle tamamen yeniden oluşturulabilir.

 

Bu kadar dinamik bir ortamda uygulamaların birbirlerine IP adresleri üzerinden bağımlı olması ciddi operasyonel karmaşa yaratır.

 

Service Discovery sayesinde uygulamalar altyapının nerede olduğuyla değil, ihtiyaç duydukları servisin adıyla ilgilenir.

 

Altyapı değişebilir.

 

IP adresi değişebilir.

 

Instance değişebilir.

 

Ama uygulamanın kullandığı servis kimliği aynı kalabilir.

 

DNS + Service Discovery

 

DNS burada son derece önemli bir rol oynar.

 

Çünkü DNS zaten uygulamaların isimleri kaynaklara dönüştürmek için kullandığı evrensel mekanizmadır.

 

Service Discovery ile birlikte kullanıldığında DNS, yalnızca statik sistemleri gösteren bir kayıt mekanizması olmaktan çıkar ve dinamik altyapının gerçek zamanlı adresleme katmanlarından biri haline gelir.

 

Böylece on-premise sistemlerden cloud workload'larına, Kubernetes ortamlarından mikroservislere kadar farklı altyapılar ortak bir isimlendirme ve erişim yaklaşımının parçası olabilir.

 

BlueCat Yaklaşımı

 

BlueCat, kurumsal DNS, DHCP ve IPAM altyapısını modern cloud ve uygulama ekosistemleriyle entegre ederek dinamik kaynakların kurumsal ağ içerisinde daha kontrollü biçimde keşfedilmesine ve yönetilmesine yardımcı olur.

 

Otomasyon ve API tabanlı entegrasyonlarla yeni kaynakların DNS altyapısına dahil edilmesi, değişikliklerin güncel tutulması ve servislerin ihtiyaç duydukları kaynaklara güvenilir biçimde erişmesi kolaylaştırılabilir.

 

Böylece modern uygulama ekiplerinin ihtiyaç duyduğu çeviklik ile kurumsal BT'nin ihtiyaç duyduğu kontrol ve görünürlük aynı mimaride buluşur.

 

Çünkü modern altyapıda asıl mesele bir IP adresinin nerede olduğunu bilmek değildir.

 

Doğru servisi, doğru anda, doğru yerde bulabilmektir.

 

Bir sonraki sayımızda API & Integration konusunu ele alacak ve DNS, DHCP ve IPAM altyapısının DevOps, cloud, ITSM ve otomasyon ekosisteminin aktif bir parçası haline nasıl getirilebileceğini inceleyeceğiz.

 

Key Takeaway

 

Altyapı sürekli değişebilir. Uygulamaların birbirini bulabilme yeteneği değişmemelidir.

 



BlueCat Monday | Enterprise DNS Series

Prepared by Zero Second

Helping organizations build resilient, secure and intelligent DNS infrastructures

 

 
 
 

Yorumlar


bottom of page