Akcja-integracja AVI z NSX-T. Część 1.

Dawno nie pisałem, przyszedł więc czas, aby to zmienić. Szukając ciekawego tematu, padło na fajne rozwiązanie przejęte jakiś czas temu przez VMware, a jest nim AVI. Jest to pierwszy wpis z serii o rozwiązaniu AVI i integracji z NSX-T.

Jest to rozwiązanie, w którym dostajemy Load Balancer, WAF, GSLB. Rozwiązanie możemy postawić zarówno w każdej dostępnej Chmurze, jak i we własnym Data Center, a do tego posiadać centralną konsolę do zarządzania. Dużym plusem rozwiązania jest to, że dostajemy bardzo fajny moduł analityczny, w którym możemy sprawdzić, jak działa nasza aplikacja z perspektywy samej aplikacji, użytkownika czy sieci.

https://lelusz.comblog/nsx-t-czas-poznac-rywala-8/

Na starcie możemy powiedzieć, że mamy 2 wersje Basic oraz Enterprise. W wersji basic dostajemy wszystkie funkcjonalności, takie same jak w NSX Load Balancerze, który za chwilę zostanie zastąpiony. W wyższej wersji dostajemy, z kolei wszystkie funkcjonalności. Poniżej tabelka z porównaniem wersji.

  Basic Enterprise
L7 Load Balancing Częściowo Full
SSL/TLS Częściowo Full
L3/4 Policies Częściowo Full
L7 Policies Częściowo Full
Application Rate Limiting Brak Full
DDoS Protection Brak Full
Global Server Load Balancing Brak Full
Intelligent Web Application Firewall Brak Full
Service Type LB Brak Full
Container Ingress Częściowo Full
Administration Częściowo Full
Application Visibility / Analytics   Full
Scale and HA Częściowo Full
Flexible upgrades Brak Full
Ecosystem automation Częściowo Full
License / Entitlement As a part of NSX-DC ADV/ENT License   NSX-ALB Enterprise License  

Rozwiązanie AVI jest bardzo elastycznym oraz skalowalnym rozwiązaniem poprzez swoją budowę i składa się z 2 elementów.

Controller, jest elementem odpowiedzialnym za centralne zarządzanie rozwiązaniem poprzez GUI, CLI czy REST API. Dzięki otwartemu podejściu do zarządzania możemy wykorzystać narzędzia: Ansible, Terraform do konfiguracji.  Controller integruje się z rozwiązaniami takimi jak:

  • NSX-T
  • vCenter
  • Azure
  • Google (GCP)
  • AWS
  • K8S
  • OpenShift

Dzięki takiej integracji możemy prowadzić orchiestrację dla Service Node.

Całe przetwarzanie analityczne oraz wyświetlanie informacji odbywa się z poziomu Controllera. Controller może zostać skonfigurowany w wersji standalone i jak wysokiej dostępności poprzez klaster trzy nodowy. Przy klastrze wszystkie nody klastra przetwarzają informacje poprzez dzielenie się zadaniami, jeden z nodów jest tzw. liderem.

Ciekawym podejściem jest to, że w ramach jednego kontrolera możemy tworzyć wiele “tenantów”. Jest to wygodne rozwiązanie, przykładowo dla wielu zespołów, które jednocześnie konfigurują rozwiązanie.

Kolejnym atutem jest zastosowanie data scriptu, który pozawala na modyfikowanie nagłówków z poziomu skryptu. Jest to wykorzystanie języka LUA.

Service Engine (SE) jest natomiast elementem odpowiedzialnym za przetwarzanie informacji w funkcji Load Balancer, GSLB czy Web application firewall. Cała konfiguracja SE jest wypychana z Controllera. Service Engine (SE) może mieć postać wirtualnej maszyny, kontenera czy fizycznego serwera. SE możemy mieć w trybie “standalone” czy HA w trybie A/A czy A/P. Sam SE jest skalowany w ramach licencji poprzez dodanie zasobów czy dodanie wielu SE do architektury.

Pojedynczy Service Engine w konfiguracji 1 vCPU ma wydajność:

  1 Core
L4 5Gbps
L7 RPS 50000
L7 3Gbps
SSL 1 Gbps
SSL TPS ECC 2000
SSL TPS RSA 750

Warto dodać, że w ramach jednego kontrolera może pracować maksymalnie 200 SE, możemy zbudować fajne rozwiązanie przy takiej architekturze.

Trochę więcej o funkcjonalnościach

Przy założeniu, że dysponujemy pełną licencją, rozwiązanie AVI ma dużo funkcjonalności z podziałem na funkcje:

Load Balancer

  • L7 HTTP LB
  • L4 TCP/UPD LB
  • GSLB (Global Load Balancer) 
  • Connetet Switching
  • Autoscaling

Security

  • Web App Firewall
  • SSL Offload
  • DDoS Protection
  • L7 polityki
  • Rate Limiting

Analityka

  • Mapa Aplikacji
  • Scoring zdrowia aplikacji
  • Wydajność sieci
  • Wydajność Aplikacji
  • Logowanie

Tyle byłoby słowem wprowadzenia w rozwiązanie AVI, w kolejnym wpisie skupimy się na przygotowaniu środowiska oraz samej instalacji Controllera.