Es könnte mittlerweile bis in die letzte Ecke vorgedrungen sein. VMware hat mit der Akquise von Avi Networks im Jahre 2019 einen weiteren Coup zur Erweiterung der NSX Familie gelandet. Wäre da nicht schon ein Load Balancer innerhalb der NSX Familie vorzufinden gewesen, würde sich nicht die Frage stellen: „Wieso holt sich VMware einen weiteren Load Balancer ins Portfolio?“ Dieser Frage möchte ich in diesem Blog-Beitrag gerne auf den Grund gehen.
Stellen wir zuerst einmal das Wissenswerte gegenüber:
VMware NSX Data Center ist inzwischen zu einem weitreichenden Software Defined Networking gewachsen. Konnte es zuvor nur für den VMware eigenen Hypervisor genutzt werden, so kann es mittlerweile in unterschiedlichste Virtualisierungslösungen, wie Vmware ESXi, KVM und Kubernetes integriert werden. Hauptaufgabe ist die Bereitstellung von virtuellen Netzwerk-Funktionen sowie einer entsprechenden Netzwerk-Security, welche sich über Integration von Drittanbietern in ihrer Funktion erweitern lässt.
Zu den virtuellen Netzwerk-Funktionen gehört unter anderen die Load Balancing Funktionalität. Das Load Balancing dient der Last-Verteilung von Diensten auf eine ausgelegte Anzahl Serversysteme im Hintergrund (Performance). Neben Lastverteilung ist ein weiteres Hauptmerkmal die Gewährleistung einer höheren Verfügbarkeit von Diensten (High-Availability).
Die NSX Data Center Load Balancing Funktionalität wird über sogenannte Edges bereitgestellt. Genauer ausgedrückt werden innerhalb der Edges sogenannte Service Router Instanzen gestartet, welche den LB Service beherbergen.
Der NSX Data Center (LB) unterstützt u.a. folgende Merkmale (keine vollständige Aufzählung):
- Layer 4 – TCP / UDP
- Layer 7 – HTTP / HTTPS
- Server pools – Statisch und Dynamisch mit NSGroup
- Persistence – Source-IP und Cookie persistence mode
- Health check monitors – Active Monitor (HTTP, HTPPS, TCP, UDP, and ICMP) und passive Monitor
- SNAT – Transparent, Automap und IP List
- In-line und One-arm mode
- WebUI und API
Da sich Load Balancer zu einer zentralen Netzwerk-Komponente bei der Kommunikation mit Diensten/Anwendungen entwickelt haben, wurden Stück für Stück neue Features in den Load Balancer implementiert. Die dadurch gewonnenen neuen Möglichkeiten entpuppen sich nun zu einem Application Delivery Controller (ADC), einer zentralen Service Komponente die dem Ziel dient, Anwendungen so modern, agil, transparent und sicher wie möglich bereitzustellen.
VMware NSX Advanced Load Balancer (ehemals auch bekannt als Avi Networks Plattform) ist ein Distributed Application Delivery Controller (ADC). VMware NSX Advanced Load Balancer wurde mit dem Fokus entwickelt sich in unterschiedlichste Cloud-Infrastrukuren integrieren zu können. Daher ist die Wahl zu einer reinen Software-Lösung nicht schwergefallen. VMware NSX Advanced Load Balancer basiert auf einer SD Architektur, das bedeutet getrennte Management, Control und Data Plane, was ihm einen sehr flexiblen Einsatz ermöglicht. Ausstattungen wie eine Intelligent Web Application Firewall (iWAF), erweiterten Analyse-Funktionen, Data-Script Funktionalitäten, nativen Cloud- und Infrastruktur-Integrationen, automatische/elastische Deployments und vielem mehr lassen den ADC zu einer flexiblen Lösung mit hohem Einsatzgrad reifen. Getreu dem Motto „Any application on any cloud, running on VMs, containers, or bare metal.“
Der NSX-T Advanced Load Balancer unterstützt u.a. folgende Merkmale (keine vollständige Aufzählung):
- Identischen Funktionsumfang von NSX Data Center (Load Balancer)
- Layer 7 – DNS, SIP, …
- Global Server Load Balancing
- Cloud/Infratsruktur Integrationen – VMware, Kubernetes, AWS, GCP, Cisco APIC, Microsoft Azure, Openstack, und weitere
- Auto-Discovery (Networks, Pool Members, Server Configuration, etc.)
- Data Script – Load Balancing nach eigenen Vorgaben
- Intelligent Web Application Firewall
- End-To-End Visibility und Analytics (Troubleshooting)
- (Predictive) Auto-Scaling von Anwendungen
Technisch gesehen unterscheiden sich beide Lösungen deutlich voneinander, was sowohl den Funktionsumfang als auch deren Architektur betrifft. NSX Advanced Load Balancer ist eine schöne Ergänzung der NSX Familie und folgt dem Bestreben der VMware Vision – Any Cloud, Any Application, Any Device…
Wann entscheide ich mich für welche Lösung?
Die Frage kann mit einer pauschalen Aussage leider nicht beantwortet werden. Die individuellen Gegebenheiten einer Infrastruktur sollten im Vorfeld einer Anschaffung genau betrachtet werden.
Ist bisher noch keine Load Balancing Komponente im Einsatz oder soll ausschließlich eine vorhandene Load Balancing Komponente abgelöst werden, bietet sich wahrscheinlich der Einsatz von NSX Advanced Load Balancer an. Kostentechnisch liegt der Einstieg des NSX Advanced Load Balancer unter dem Einstieg von NSX Data Center. Das ist nachvollziehbar, denn NSX Data Center bietet insgesamt einen größeren Funktionsumfang, auch wenn es auf die LB Funktionen reduziert, hintenansteht.
Ist bereits NSX Data Center im Einsatz, so sollte genau betrachtet werden, welcher Umfang eines Load Balancers tatsächlich genutzt werden soll. Nicht selten kommt es vor, das reines TCP oder HTTPS Load Balancing einer einfachen Anwendung ausreichend ist.
Als Leitfaden könnte folgende Formulierung dienen – „Je komplexer die zu lösende (Load Balacing) Aufgabe, desto wahrscheinlicher wird der Einsatz von NSX Advanced Load Balancer.“