Nowość w AWS Global Accelerator – Internet Protocol Version 6 (IPv6) Support

11 sierpnia 2022

Wybór IPv6 stale zwiększał się w ciągu ostatnich kilku lat, zwłaszcza wśród sieci komórkowych.

Główne powody przejścia na IPv6 to:

  • Limitowana dostępność adresów IPv4 może ograniczyć możliwość skalowania w górę publicznych serwerów WWW i aplikacji.
  • Użytkownicy IPv6 z sieci komórkowych doświadczają lepszej wydajności, gdy ich ruch sieciowy nie wymaga zarządzania zmianą formy IPv6 na IPv4.
  • Aby uruchomić określony ruch internetowy za pośrednictwem protokołu IPv6, konieczne może być przestrzeganie przepisów (takich jak Federal Acquisition Regulation w USA).

Na tej podstawie autorzy stwierdzili, że mogą pomóc w ulepszeniu ścieżki sieciowej, z której korzystają Twoi klienci, aby dotrzeć do Twoich aplikacji, poprzez dodanie obsługi IPv6 do AWS Global Accelerator. Global Accelerator wykorzystuje globalną sieć AWS do kierowania ruchu sieciowego i utrzymywania na stałym poziomie utraty pakietów, fluktuacji i opóźnień na stałym, niskim poziomie. Klienci tacy jak Atlassian, New Relic i SkyScanner już korzystają z Global Accelerator w celu poprawy globalnej dostępności i wydajności swoich aplikacji.

Global Accelerator udostępnia dwa ogólnoświatowe statyczne publiczne adresy IP, które działają jako stały punkt wejścia do aplikacji. Punkty końcowe aplikacji można aktualizować bez wprowadzania zmian w adresie IP użytkownika. Jeśli skonfigurujesz więcej niż jeden punkt końcowy aplikacji, Global Accelerator automatycznie przekieruje ruch do najbliższego dostępnego punktu końcowego w dobrej kondycji, aby złagodzić awarię punktu końcowego.

Od dziś możesz zapewnić lepszą wydajność sieci, kierując ruch IPv6 przez Global Accelerator do punktów końcowych aplikacji działających w regionach AWS. Global Accelerator obsługuje teraz dwa typy akceleratorów: dual-stack i IPv4-only. Akcelerator z dwoma stosami zapewnia parę globalnych statycznych adresów IP IPv4 i IPv6, które mogą obsługiwać zarówno ruch IPv4, jak i IPv6.

W przypadku istniejących akceleratorów obsługujących tylko protokół IPv4 można zaktualizować akceleratory do dwóch stosów, aby obsługiwać zarówno ruch IPv4, jak i IPv6. Ta aktualizacja umożliwia akceleratorowi obsługę ruchu IPv6 i nie wpływa na istniejący ruch IPv4 obsługiwany przez akcelerator.

Akceleratory z dwoma stosami obsługujące zarówno ruch IPv6, jak i IPv4 wymagają punktów końcowych z dwoma stosami na back-end. Na przykład, Application Load Balancers (ALB) mogą mieć swój typ adresu IP skonfigurowany jako tylko IPv4 lub podwójny stos, co pozwala im akceptować połączenia klientów IPv4 lub IPv6. Obecnie ALB z dwoma stosami są obsługiwane jako punkty końcowe akceleratorów z dwoma stosami.

Wdrażanie aplikacji z dwoma stosami

Aby przetestować tę nową funkcję, potrzebujesz aplikacji z dwoma stosami z punktem wejścia ALB. Aplikacja musi być wdrożona w Amazon Virtual Private Cloud (Amazon VPC) i obsługiwać ruch IPv6. Nie posiadasz jednak na swoim koncie VPC z obsługą IPv6. Możesz więc wykonać te instrukcje, aby przeprowadzić migrację istniejącego VPC obsługującego tylko IPv4 do IPv6 lub utworzyć VPC, który obsługuje adresowanie IPv6. W tym artykule autorzy wybierają utworzenie VPC.

W konsoli zarządzania AWS przejdź do pulpitu nawigacyjnego Amazon VPC. Wybierz Uruchom Kreatora VPC. W kreatorze wprowadź wartość znacznika nazwy. Ta wartość będzie używana do automatycznego generowania tagów nazw dla wszystkich zasobów w VPC. Następnie wybierz opcję powiązania bloku CIDR IPv6 dostarczonego przez Amazon. Wszystkie pozostałe opcje pozostaw wartościom domyślnym i wybierz Utwórz VPC.

Kreator VPC

Po niecałej minucie VPC jest gotowe. Edytuj ustawienia obu podsieci publicznych, aby włączyć automatyczne przypisywanie ustawień IP i automatycznie żądać zarówno publicznego adresu IPv4, jak i adresu IPv6 dla nowych interfejsów sieciowych w tej podsieci.

automatyczne przypisywanie ustawień IP

Następnie chcesz wdrożyć aplikację w tym VPC. Aplikacja będzie punktem końcowym dla Twojego akceleratora. Wyświetl i pobierz skalowalny i trwały szablon WordPress AWS CloudFormation z sekcji Przykładowe rozwiązania w dokumentacji CloudFormation. Ten szablon wdraża pełną witrynę WordPress za ALB. Warstwa sieci jest skalowalna i zaimplementowana jako grupa automatycznego skalowania EC2. Baza danych MySQL jest zarządzana przez Amazon Relational Database Service (RDS).

Przed wdrożeniem stosu edytuj szablon, poprzez wprowadzenie kilku zmian. Najpierw dodaj zasób DBSubnetGroup:

"DBSubnetGroup" : {
  "Type": "AWS::RDS::DBSubnetGroup",
  "Properties": {
    "DBSubnetGroupDescription" : "DB subnet group",
    "SubnetIds" : { "Ref" : "Subnets"}
  }
},

Następnie dodaj właściwość DBSubnetGroupName do zasobu DBInstance. W ten sposób baza danych utworzona przez szablon zostanie wdrożona w tych samych podsieciach (i VPC) co serwery WWW.

"DBSubnetGroupName" : { "Ref" : "DBSubnetGroup" },

Ostatnia zmiana dodaje właściwość IpAddressType do zasobu ApplicationLoadBalancer, aby utworzyć moduł równoważenia obciążenia z dwoma stosami, który ma adresy IPv6 i będzie gotowy do użycia z nową opcją podwójnego stosu globalnego akceleratora.

"IpAddressType": "dualstack",

Ze względu na to, że IpAddressType jest ustawiony na podwójny stos, ALB utworzony przez stos również będzie miał adresy IPv6 i będzie gotowy do użycia z nową opcją podwójnego stosu Global Accelerator.

W konsoli CloudFormation utwórz stos i prześlij szablon, który właśnie edytowałeś. W parametrach szablonu wpisz użytkownika bazy danych i hasło do użycia. Jako parametr VpcId wybierz właśnie utworzony VPC obsługujący protokół IPv6. Dla parametru Subnets wybierz dwie publiczne podsieci tej samej sieci VPC. Następnie przejdź do kolejnych kroków i utwórz stos.

Po kilku minutach tworzenie stosu jest zakończone. Aby uzyskać dostęp do strony internetowej, musisz otworzyć dostęp sieciowy do systemu równoważenia obciążenia. W konsoli EC2 utwórz grupę bezpieczeństwa, która umożliwia publiczny dostęp za pomocą protokołów HTTP i HTTPS (porty 80 i 443).

W konsoli EC2 utwórz grupę bezpieczeństwa, która umożliwia publiczny dostęp za pomocą protokołów HTTP i HTTPS (porty 80 i 443).

Wybierz Load balancers z panelu nawigacyjnego oraz ALB używany przez Twoją aplikację. W sekcji Zabezpieczenia wybierz Edytuj grupy zabezpieczeń i dodaj grupę zabezpieczeń, którą właśnie utworzyłeś, aby umożliwić dostęp do sieci.

W sekcji Zabezpieczenia wybierz Edytuj grupy zabezpieczeń i dodaj grupę zabezpieczeń, którą właśnie utworzyłeś, aby umożliwić dostęp do sieci.

Teraz poszukaj nazwy DNS z podwójnym stosem (A lub AAAA Record) modułu równoważenia obciążenia. Otwórz przeglądarkę i połącz się za pomocą nazwy DNS, aby zakończyć konfigurację WordPressa.

Teraz poszukaj nazwy DNS z podwójnym stosem (A lub AAAA Record) modułu równoważenia obciążenia. Otwórz przeglądarkę i połącz się za pomocą nazwy DNS, aby zakończyć konfigurację WordPressa.

Podczas ponownego łączenia się z punktem końcowym zobaczysz swoją nową (i pustą) witrynę WordPress.

aws global accelerator ipv6 wordpress

Korzystanie z akceleratorów Dual-Stack z obsługą ruchu IPv6 i IPv4

Teraz, gdy Twoja aplikacja jest gotowa, dodaj akcelerator z dwoma stosami przed ALB z dwoma stosami. W konsoli Global Accelerator wybierz opcję Utwórz akcelerator. Wprowadź nazwę akceleratora i wybierz typ akceleratora Standard.

aws global accelerator ipv6 create

Aby przekierować zarówno IPv4, jak i IPv6 przez ten akcelerator, wybierz opcję Dual-stack dla typu adresu IP.

aws global accelerator ipv6 dual stack

Następnie dodaj obserwator dla portu 80 wykorzystujący protokół TCP.

aws global accelerator ipv6 listener

Dla tego obserwatora skonfiguruj grupę punktów końcowych w regionie AWS, w którym masz wdrożoną aplikację.

aws global accelerator ipv6 endpoint group

Wybierz Application Load Balancer dla typu Endpoint a następnie ALB w stosie CloudFormation.

aws global accelerator ipv6 endpoint

Następnie wybierz Utwórz akcelerator. Po kilku minutach akcelerator jest wdrażany i otrzymujesz nazwę DNS z dwoma stosami, aby dotrzeć do ALB za pomocą IPv4 lub IPv6 w zależności od sieci używanej przez klienta.

aws global accelerator ipv6 config

Teraz Twoi klienci mogą używać adresów IPv4 i IPv6 lub jeszcze lepiej, nazwy DNS z dwoma stosami akceleratora, aby połączyć się z witryną WordPress. Jeśli istnieje aplikacja typu front-end lub aplikacja mobilna, której Twoi klienci używają do łączenia się z interfejsami API REST WordPress, możesz użyć nazwy DNS z dwoma stosami, aby klienci połączyli się przy użyciu preferowanej trasy IPv4 lub IPv6.

Aby zrozumieć, czy komunikacja między Global Accelerator a ALB działa, możesz monitorować nową metrykę FlowsDrop Amazon CloudWatch. Ta metryka informuje Cię, czy Global Accelerator nie może kierować ruchu IPv6 przez punkt końcowy. Na przykład może się tak zdarzyć, jeśli po utworzeniu akceleratora konfiguracja ALB zostanie zaktualizowana do korzystania tylko z protokołu IPv4.

Dostępność i ceny

Akceleratory z dwoma stosami można skonfigurować za pomocą AWS Management Console, AWS Command Line Interface (CLI) i zestawów AWS SDK. Możesz użyć akceleratorów z dwoma stosami, aby zoptymalizować dostęp do aplikacji wdrożonych w dowolnym komercyjnym regionie AWS.

Translacja protokołów nie jest obsługiwana ani IPv4 na IPv6, ani IPv6 na IPv4. Na przykład Global Accelerator nie pozwoli skonfigurować akceleratora z dwoma stosami z punktem końcowym ALB tylko dla protokołu IPv4. Ponadto w przypadku punktów końcowych protokołu IPv6 ALB należy włączyć zachowywanie adresów IP klienta.

Korzystanie z akceleratorów z dwoma stosami nie wiąże się z dodatkowymi kosztami. Płacisz za godziny i ilość transferu danych w dominującym kierunku, z którego korzysta ruch do lub z akceleratora. Koszty transferu danych zależą od lokalizacji Twoich klientów i Regionów AWS, w których uruchamiasz swoje aplikacje. Więcej informacji można znaleźć na stronie z cennikiem Global Accelerator.

źródło: AWS

 

 

Case Studies
Referencje

Hostersi wsparli nas na każdym etapie projektowania i budowy infrastruktury. Finansowanie, które pomogli pozyskać nam od AWS, pozwoliło przetestować szereg różnych rozwiązań i wybrać konfigurację, która najlepiej odpowiada potrzebom naszej aplikacji. Hostersi stworzyli dla nas infrastrukturę „szytą na miarę”, którą dzięki programowi wsparcia startupów, pozyskaliśmy niemal bezkosztowo.

Wojciech Mróz
CEO & Co-founder Pagaspot
W skrócie o nas
Specjalizujemy się w dostarczaniu rozwiązań IT w obszarach projektowania infrastruktury serwerowej, wdrażania chmury obliczeniowej, opieki administracyjnej i bezpieczeństwa danych.