Przedstawiamy AWS Gateway Load Balancer - łatwe wdrażanie, skalowalność i wysoka dostępność dla urządzeń partnerskich

18 grudnia 2020

W zeszłym roku AWS uruchomił funkcję Virtual Private Cloud (VPC) Ingress Routing, która umożliwia routing całego ruchu przychodzącego i wychodzącego do/z bramki Internet Gateway (IGW) lub Virtual Private Gateway (VGW) do interfejsu Elastic Network Interface konkretnej instancji Amazon Elastic Compute Cloud (EC2).

Dzięki VPC Ingress Routing można teraz skonfigurować VPC tak, aby wysyłał cały ruch do instancji EC2, która zazwyczaj dostarcza narzędzia bezpieczeństwa sieciowego w celu sprawdzenia lub zablokowania podejrzanego ruchu sieciowego, lub przeprowadzenia jakiejkolwiek innej kontroli ruchu przed przekazaniem go do innych instancji EC2.

Chociaż ułatwia to dodanie wirtualnego urządzenia do sieci, zapewnienie wysokiej dostępności i skalowalności pozostaje wyzwaniem. Klienci muszą uruchamiać urządzenia nadmiarowe, aby poradziły sobie ze szczytowym obciążeniem oraz wysoką dostępnością, albo ręcznie skalować infrastrukturę w górę i w dół w zależności od natężenia ruchu, lub też korzystać z innych narzędzi pomocniczych - wszystko to zwiększa koszty ogólne i operacyjne.

Niedawno AWS ogłosił dostępność usługi AWS Gateway Load Balancer (GWLB), która umożliwia łatwe i opłacalne wdrożenie, skalowanie oraz zarządzanie dostępnością zewnętrznych urządzeń wirtualnych, takich jak firewalle, systemy wykrywania i zapobiegania włamaniom (IDS/IPS) oraz systemy deep packet inspection w chmurze. Partnerzy AWS Partner Network oraz AWS Marketplace mogą również oferować swoje urządzenia wirtualne jako usługę (as-a-service) dla klienów AWS, bez konieczności rozwiązywania złożonych problemów związanych ze skalowaniem, dostępnością i dostarczaniem usług.

Dodatkowo, Gateway Load Balancer otwiera nowe możliwości, aby dodać własną logikę lub usługę innej firmy do dowolnej ścieżki sieciowej w AWS, gdzie istnieje potrzeba sprawdzenia i podjęcia działania na pakietach. Na przykład, można napisać prostą aplikację, która sprawdza, czy ruch jest niezaszyfrowany lub jest typu TLS1.0/TLS1.1 pomiędzy posiadanymi VPC. GWLB jest dość unikatowy i stanowi ogromny krok naprzód, ponieważ robi to, czego nie potrafią protokoły takie jak Equal Cost Multiple Path Routing (ECMP), wysyłając dwukierunkowy ruch transparentnie tą samą, stałą trasą (przepływ symetryczny) w metodologii bump-in-the-wire.

 

Jak działa Gateway Load Balancer

Usługa Gateway Load Balancer łączy w sobie transparentną bramkę sieciową (czyli pojedynczy punkt wejścia i wyjścia dla całego ruchu) oraz load balancer, który rozprowadza ruch i skaluje urządzenia wirtualne w zależności od zapotrzebowania. 

Istnieje możliwość wysłania ruchu do GWLB, dokonując prostych konfiguracji w tabelach tras VPC. Dzięki GWLB, klienci mogą elastycznie skalować swoje urządzenia wirtualne poprzez równoważenie obciążenia w całej flocie urządzeń wirtualnych. GWLB zwiększa dostępność poprzez routowanie ruchu przez urządzenia wirtualne, a także przekierowuje ruch, gdy urządzenie staje się „niezdrowe” (w przypadku jego awarii).

Dzięki GWLB, można używać własnych urządzeń w AWS i polegać na GWLB w zarządzaniu ich skalą i potrzebami dostępności, zachowując przy tym dotychczasowe funkcje i istniejące procesy. Dzięki temu można również elastycznie skalować urządzenia wirtualne poprzez równoważenie obciążenia ruchem w całej flocie urządzeń wirtualnych. Skalowanie w górę i w dół redukuje koszty. GWLB wysyła oba przepływy ruchu do tego samego urządzenia, umożliwiając mu tym samym realizację stanowego przetwarzania ruchu.

GWLB i urządzenia wirtualne wymieniają między sobą ruch za pomocą enkapsulacji GENEVE, która pozwala GWLB zachować zawartość oryginalnego ruchu. GWLB wykorzystuje Gateway Load Balancer Endpoint (GWLBe), nowy typ VPC Endpoint (w ramach AWS PrivateLink), który może być następnym celem w tabeli tras. Upraszcza to wdrażanie usług urządzeń ponad ograniczeniami VPC.

Na przykład, można utworzyć Customer VPC, w którym będą znajdować się jego aplikacje. To VPC będzie tym, w którym zostanie wdrożony GWLB Endpoint. Urządzenia partnera zostaną wdrożone w Partner VPC.

GWLB Endpoint

Dostawcy urządzeń oraz konsumenci mogą przebywać na różnych kontach AWS i VPC. GWLBe umożliwia konsolidację urządzeń, spójność polityk bezpieczeństwa, redukcję błędów operatora i bezproblemową kontrolę ruchu bez konieczności zmiany źródła lub miejsca docelowego ruchu oraz translacji NAT.

Aby zapewnić wysoką dostępność, można wykorzystać zaawansowane możliwości routingu GWLB, aby kierować ruch tylko do „zdrowych” urządzeń i przekierowywać ruch, gdy urządzenie ulegnie awarii.

GWLB działa na wszystkich VPC i kontach użytkowników, dając możliwość scentralizowania floty wirtualnych urządzeń. Możliwość korzystania z GWLB poprzez konta użytkowników pozwala partnerom na oferowanie swoich urządzeń wirtualnych jako usługi obsługiwanej przez AWS, do której klienci mają dostęp ze swoich VPC. Zmniejsza to złożoność i poprawia bezpieczeństwo.

Gateway Load Balancer – Pierwsze kroki

Aby utworzyć GWLB, należy wybrać przycisk Create w sekcji Gateway Load Balancer, które znajduje się w menu Load Balancer Wizard, w konsoli EC2 w zakładce Load Balancing.

gateway load balancer

Aby skonfigurować GWLB, należy podać nazwę, potwierdzić wybór VPC oraz podsieci, a także określić Availability Zones. Następnie należy kliknąć w Next: Configure Routing.

configure gateway load balancer

Żądania GWLB zostaną skierowane do celów w danej Target Grupie przy użyciu protokołu GENEVE i domyślnie portu 6081. Następnie należy potwierdzić klikając w Next: Register Targets.

register targets load balancer

Kolejnym krokiem jest rejestracja instancji EC2 znajdującej się w Partner VPC i wybranie Next: Review, a następnie kliknięcie w Create w następnym oknie.

review load balancer

Podczas konfigurowania grupy bezpieczeństwa instancji EC2 z oprogramowaniem urządzeń wirtualnych, można dodać port GENEVE - 6081, aby uzyskać ruch z GWLB, oraz port HTTP - 80, aby sprawdzić poprawność działania.

W celu skierowania ruchu do i od klienta do urządzeń za GWLB, można skonfigurować GWLB Endpoint (GWLBe). Do tego będą potrzebne minimum dwie podsieci na Availability Zone - po jednej dla podsieci GWLBe i Application, dwóch tablic routingu na AZ - po jednej dla podsieci GWLBe i Application oraz jednej tablicy routingu Ingress związanej z IGW w VPC.

Aby utworzyć Gateway Load Balancer Endpoint za pomocą interfejsu linii poleceń AWS (CLI) AWS Command Line Interface (CLI), należy użyć polecenia createe-vpc-endpoint-service-configuration.

CLI create Load balancer

Należy użyć polecenia create-vpc-endpoint, aby utworzyć endpoint Gateway Load Balancer dla usługi.

create vpc endpoint load balancer

Następnie należy z edytować tabele tras, aby dodać GWLBe jako następne cele w customer-client-rtb i customer-gwlbe-rtb-id w Application/Instance i Internet Gateway. Czynność tę należy powtórzyć dla każdej tabeli tras podsieciowej w każdej strefie AZ.

gateway load balancer

Aby uzyskać więcej informacji na temat konfiguracji, warto obejrzeć film instruktażowy jako uzupełnienie następujących kroków:

  1. Zlokalizuj oprogramowanie wirtualnego urządzenia partnera w AWS Marketplace
  2. Uruchom instancje urządzeń w swoim VPC
  3. Utwórz GWLB i target grupę z instancjami urządzeń
  4. Utwórz endpointy GWLB, w których ruch musi być kontrolowany
  5. Zaktualizuj tabelę tras, aby endpoint GWLB stał się następnym celem

Partnerzy GWLB

AWS GWLB integruje się z wielona wiodącymi partnerami w branży, w tym Aviatrix, Check Point, Cisco Systems, cPacket, Glasnostic, Fortinet, HashiCorp, NETSCOUT, Palo Alto Networks, Radware, Trend Micro i Valtix. Zapewnili oni mnóstwo pomocnych informacji zwrotnych dla AWS. Oto kilka postów na blogu, które napisali w celu podzielenia się swoimi doświadczeniami.

Wykorzystując GWLB, partnerzy AWS mogą oferować klientom AWS szereg zarządzanych usług (wykorzystujących urządzenia wirtualne jako oprogramowanie) Software as a Service (SaaS), bez konieczności osobnego rozwiązywania kwestii dostępności, równoważenia obciążenia i skalowania ich rozwiązań w chmurze. Można zintegrować się z GWLB poprzez wsparcie protokołu GENEVE w urządzeniu, wdrożenie oprogramowania do dekodowania/kodowania metadanych GWLB oraz przeprowadzenie testów kompatybilności urządzeń w środowisku AWS. Aby uzyskać więcej informacji, należy skontaktować się z zespołem partnerów AWS.

Aby zacząć przygodę z Gateway Load Balancer, warto zajrzeć do dokumentacji i przykładowych kodów.

Źródło: https://aws.amazon.com/

PYTANIA? SKONTAKTUJ SIĘ Z NAMI