Son günlerde gündemim bu olmaya başladı okuduğum anladığım şeyleri bir araya getirip benim gibi araştırmaya kalkacak kişiler için not mahiyetinde ile yazıya dökmek istedim. GSLB açılım olarak Global Server Load Balancing anlamına geliyor Küresel Sunucu Yük Dengleyici. Bu sistem araştırmalarıma göre 2 türlü kullanılmış kullanım mantıklarını birbirine çok yakın olmakla beraber tamamen ihtiyaca göre tasarlamaya dayalı.
Şimdi diyelim ki bir uygulamamız ve dünya çapında hizmet veriyoruz çok bilinen bir sosyal medya sitesi olsun. Mantık şu bir web sitesi var ve 3 tane farklı lokasyonlarda veri merkezimiz var Amerikadan bir kişi bağlandığında Amerikadaki veri merkezine, Avrupadaki kişi Avrupaya, Asyadaki kişide yine Asyadaki veri merkezine yönlendiriliyor. Örnek verecek olursak İstanbuldan www.facebook.com’a ping atıyorum çözdüğü ip’nin konumuna baktığımda Bulgaristan’daki bir veri merkezini gösteriyorken Azure’da Amerika konumdaki bir bilgisayardan denediğimde çözdüğü ip’nin konumu Amerikadaki bir veri merkezi.
Resim-1
Resim Kemp’den
Yukarıdaki resimde daha iyi anlamak için minik bir örnek var, yani mantık olarak herkes kendine en yakın olana yönlendiyor bununla birlikte ek parametreler var yoğunluğa göre ayrım up-down durumuna göre ayrım gibi. Amerikadaki çok yoğun ise kişiyi Avrupaya yönlendirme gibi senaryolarda yapılmış.
İki türlü demiştik diğer tür ise Disaster, tahmin etmek zor değil Primary hizmet veremiyorsa Disaster’a yönlendir. Peki örnek bir senaryo olarak İstanbul ve Ankarada olmak üzere iki veri merkezimiz var burada GSLB nerede çalışmalı? Türkiyede ki gibi Cloud için kısıtlamalar olmayan yerlerde bu iş direk Cloud’da çözülmüş ve uygulanmış. Zaten mantık olarak Down olmasını beklediğimiz bir veri merkezine bu hizmeti yerleştirmek tabikide saçma olur. Disaster şu şekilde bir model var, HealtCheck.
Küçük bir açıklama ile örneklendirip ana konuya geri dönelim, kurum içinde hizmet veren bir inhouse CRM’iniz var. crm.mshowto.org, bu site load balancer üzerinden hizmet veriyor yani sitenin adresine ping attığınızda load balancer IP’sini çözüyor o IP’nin arkasında ise 5 tane sunucu aynı hizmeti veriyor. Load Balancer yükü iskamil kağıdı dağıtır gibi sunuculara dağıtarak gönderiyor. Gönderirken aynı zamanda onların sağlık durumuna bakıyor http ya da https isteklerine cevap veriyor mu? evet ise oraya kişiyi yönlendiriyor bazen 443 portuna telnet ile cevap veriyor olması o hizmetin çalıştığı anlamına gelmez burada ürünler ile farklı teknikler uygulanmış 443 cevap veriyor ve uygulama OK mesajı dönüyor mu? Bu tam olarak UP anlamına geliyor.
Şimdi ana konuya geri dönecek olursa iki şehirde veri merkezimiz vardı GSLB’de Azure’da olsun tıpkı bir Load Balancer gibi (ki zaten Load Balancer (Azure üzerinde de olmasıyla birlikte F5, Nginx, Kemp, CloudFlare, AviNetworks gibi vendorların birbirine benzer çözümleri var.)) HealtCheck durumuna göre trafiği ilgili yerlere yönlendiriyor. Olası bir sorun tespit edildiği takdirde ilgili IP adresi artık yönlendirilecek IP’ler arasında kaldırılıyor ta ki tekrar hizmet verecek duruma gelene kadar.
Konu aşağı yukarı böyle umarım faydalı olmuştur.
Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.
Referanslar
TAGs: GSLB nedir, GSLB, Global Server Load Balancing, Küresel Sunucu Yük Dengleyici, LB