VMware NSX Advanced Load Balancer (Avi) Nedir?

Merhaba arkadaşlar,

Bu yazımda sizlere VMware NSX Avi hakkında genel bilgiler vermeye çalışacağım. Ürün halihazırda yeni olduğu için Türkçe döküman bulmak pek mümkün değil. VMware Türkiye’ye göre de ülkemizde production ortamında ilk kullanan kişi olduğum için kullanacak arkadaşlara yardımcı olması amacıyla bu dökümanı hazırlamak istedim. Daha sonraki yazılarımda ise daha detaylı olarak neyin nasıl yapıldığı konusunda anlatımlarıma devam edeceğim.

VMware, 2019 yılında Avi Networks şirketinin veri merkezleri ve çoklu bulut ortamlarındaki tüm uygulamalar için yazılım tanımlı bir çoklu bulut yük dengeleme yapısı olan Avi Vantage Platform’u satın aldığını açıklamıştı. Ardından VMware bu ürünün resmi adını VMware NSX Advanced Load Balancer olarak değiştirdi. Artık VMware’in bir parçası olan Avi, bağımsız bir yük dengeleyici ve entegre bir VMware çözümü olarak piyasada yer almaya başlamıştı. Diğer yük dengeleme çözümleriyle karşılaştırıldığında Avi, daha düşük toplam sahip olma maliyetiyle daha iyi ölçeklenebilirlik, performans ve sorun giderme avantajları sağlamaktadır. Geleneksel Load Balancerların yönetilmesi karmaşıktır ve manuel sanal makine kurulumu ve ağ yapılandırması gerektirir. Operasyonların karmaşıklık ve görünürlük eksikliği, BT ekipleri için operasyonel maliyetleri önemli ölçüde artırmaktadır.

Avi, VMware ürünleri olan NSX-T ve vCenter’a doğrudan entegre olabilmesinden dolayı da tek bir tıklamayla dağıtım yapmaya başlayabilir, kapasitenizi genişletebilir ve küçültebilirsiniz. Avi’de Load Balancing, Web Application Firewall, DDOS Protection, SNI, Enhanced Virtual Hosting ve Caching gibi kısaca L2’den L7’ye tüm işlemler gerçekleştirilebilmektedir. Gerçek zamanlı analitik çıktılar alınabilmektedir.

VMware, Avi production ortamlarında 3 adet controller kurulumu önermektedir. Her bir controller 8 CPU ve 24 GB ram ile kurulmaktadır. Controllerlar kurulduktan sonra Avi, VMware ortamına 2 şekilde entegre olabilmektedir. Bunları avantaj ve dezavantajları ile anlatmaya çalışacağım:

Avi NSX-T Cloud Entegrasyonu Neler Sağlar?

En azından bana göre en mantıklı yapılandırma NSX-T ile yapılan entegrasyon sonrası kurulan ortam. Çünkü VMware; zaten Avi’yi, Cloud ve kubernetes ortamlarına entegre olabildiğinden satın aldı.

Eğer ortamınızda NSX-T varsa, Pool oluştururken Security Group kullanabilirsiniz. Overlay networkler kullanabilirsiniz. Vlan segment kullanabilirsiniz ama vCenter üzerinden eklenen DPG’ler kullanazsınız. DFW ile kurallar yazabilirsiniz. IPS/IDS ile paketleri kontrol edebilirsiniz. Ayrıca bu entegrasyonda oluşturulan SE’lar için NSX-T üzerinde otomatik olarak Security Group Object’leri oluşturulur.

Avi vCenter Cloud Entegrasyonu Neler Sağlar?

Eğer ortamınızda NSX-T mevcut değilse bu yöntemi kullanabilirsiniz. Bu yöntem NSX-T entegrasyonuna göre biraz daha kısıtlı olanaklar sağlamaktadır. Genel olarak sağladığı Load balancing ve WAF gibi belli başlı özellikleri bu yöntemde de kullanabilirsiniz. Bu yöntemde NSX-T entegrasyonuna nazaran Security Group kullanamazsınız. Eklediğiniz her sunucuyu el ile pool’a üye yapmalısınız. Network olarak sadece VDS portlarını kullanabilirsiniz (VDS versiyonunuz en az 7 olmalıdır).

VMware NSX Advanced Load Balancer Nasıl Çalışır?

Yeni başlayanlar için Avi biraz farklı gelse de aslında çok basit bir yapıda çalışmaktadır. vCenter Cloud entegrasyonunda sadece vCenter credentials istenmektedir. NSX-T entegrasyonunda ise vCenter ve NSX-T credentials istenmektedir. Kendi yapımıza göre gerekli entegrasyonları yaptıktan sonra Servis Engine Group oluşturulur:

Avi Service Engine Group Nedir?

Bir sonraki adımda anlatacağım Service Engine’ların özelliklerini belirttiğimiz policy diyebileceğiz. Bu policyde Service Engine kapasitesini (Ram, CPU ve disk), vCenter’da bulunacağı kaynaklar ve High Availability gibi seçenekleri seçebilirsiniz. Bu policyde bana göre en önemli bölüm High Availability bölümü. Bu aşamada karşımıza 3 ana başlık çıkmaktadır.

  • Legacy HA Active/Standby: Bu SE türü geleneksel yapıda çalışan load balancerlara örnektir. Aynı anda 1 aktif 1 pasif olmak üzere 2 adet Service Engine oluşturulur. En güvenli ve arıza anında en hızlı devreye girme bu modda olmaktadır. Ama bu modda sadece 1 adet SE aktif olduğu için Load Balancer kapasitemiz 1 SE kapasitesi kadardır.
  • Elastic HA N +M: Bu mod Elastic HA varsayılan modudur. Bu modda her Virtual Service tipik olarak bir SE üzerine yerleştirilir. N+M’deki “N”, SE grubuna sanal hizmetleri yerleştirmek için gereken minimum SE sayısıdır. Bu sayı “Virtual Services per Service Engine” bölümünden değiştirilebilir. M ise, SE grubunun kapasitesini düşürmeden Avi Controllar tarafından SE arızalarını işlemek için oluşturduğu fazladan ek SE sayısıdır. 
  • Elastic HA Active/Active: Bu SE modu ise en yüksek Load Balancing kapasitesini sağlamaktadır. En yüksek performans ve kapasite için Active/Active HA kullanılması önerilir. Aynı anda maksimum 1000 adete kadar SE oluşturulabilir. Bu modda gelen istekler oluşturulan bu SE’lar tarafından karşılanır. Yani oluşturduğunuz tüm SE’lar aktif ve istek karşılar. Kapasiteniz yatayda doğru orantılı olarak artar.
https://avinetworks.com/docs/latest/elastic-ha-for-avi-service-engines/

VMware Avi Service Engine Nedir?

Bir çok seferdir bahsettiğim bu SE nedir bölümüne sonunda geldik. Vmware Avi Service Engine, geleneksel olarak düşünmek gerekirse fiziksel bir load balancer nodu olarak düşünülebilir. Mesela fiziksel bir F5 load balancer sunucusu. Oluşturduğumuz Virtual Service’ler bu SE’ler üzerinde çalıştırılır. Avi sanal ortamda kullanıldığı için Servis Engine’lar gruplar ile yönetilmektedir. Her bir SE kendi kaynaklarına sahiptir. Avi resmi sitesine göre ortam durumunuza göre her bir SE core başı saniye başı 40000 istek karşılabilmektedir. SE başına maksimum 64 vCpu tanımlanabilmektedir. SE’lar kullanım anında anlık olarak artırılabilmektedir. Ayarladığınız “Delete Unused Service Engines After” parametresine göre de kullanılmayan SE’lar otomatik olarak silinmektedir. Bu SE’ları istediğiniz hostlara dağıtık olarak yerleştirip maksimum performans için ayarlamalar yapabilirsiniz. Her bir SE 1 Management ip ve 1 Data ip olmak üzere en az 2 ip’ye ihtiyaç duymaktadır. Her bir SE Avi Controller’a erişmelidir ve bu erişim Management IP üzerinden gerçekleştirilir. SE üzerine atanan virtual servis ise VIP adresine gelen istekleri pool üzerinde bulunan sunuculara data IP üzerinden aktarmaktadır.

https://docs.vmware.com/en/VMware-NSX/21.1.1/NSX_ALB_for_VMware_Cloud_Foundation/GUID-149D3FFA-BF77-4B6F-B73D-A42D5375E9CF.html

VMware NSX Advanced Load Balancer ile ilgili anlatacaklarım şimdilik bu kadar. Bir dahaki anlatımımda sizlere Avi controller cluster nasıl deploy edilir onu anlatacağım. İlgili yazıma, yazdıktan sonra altta paylaşacağım linkten ulaşabilirsiniz.

Sağlıcakla…