Dostosowywanie ruchu wychodzącego klastra przy użyciu typów wychodzących w usłudze Azure Kubernetes Service (AKS)
Możesz dostosować ruch wychodzący dla klastra usługi AKS, aby dopasować je do określonych scenariuszy. Domyślnie usługa AKS aprowizuje standardowy moduł równoważenia obciążenia jednostki SKU do skonfigurowania i użycia na potrzeby ruchu wychodzącego. Jednak domyślna konfiguracja może nie spełniać wymagań wszystkich scenariuszy, jeśli publiczne adresy IP są niedozwolone lub dodatkowe przeskoki są wymagane w przypadku ruchu wychodzącego.
W tym artykule opisano różne typy łączności wychodzącej, które są dostępne w klastrach usługi AKS.
Uwaga
Teraz można zaktualizować po utworzeniu klastra outboundType
.
Ważne
W klastrach innych niż prywatne ruch klastra serwera interfejsu API jest kierowany i przetwarzany za pośrednictwem typu wychodzącego klastrów. Aby zapobiec przetwarzaniu ruchu serwera interfejsu API jako ruchu publicznego, rozważ użycie klastra prywatnego lub zapoznaj się z funkcją integracji z siecią wirtualną serwera interfejsu API.
Ograniczenia
- Ustawienie
outboundType
wymaga klastrów usługi AKS z wartościąvm-set-type
VirtualMachineScaleSets
iStandard
load-balancer-sku
.
Typy ruchu wychodzącego w usłudze AKS
Klaster usługi AKS można skonfigurować przy użyciu następujących typów ruchu wychodzącego: moduł równoważenia obciążenia, brama translatora adresów sieciowych lub routing zdefiniowany przez użytkownika. Typ ruchu wychodzącego ma wpływ tylko na ruch wychodzący klastra. Aby uzyskać więcej informacji, zobacz Konfigurowanie kontrolerów ruchu przychodzącego.
Typ ruchu wychodzącego loadBalancer
Moduł równoważenia obciążenia jest używany do ruchu wychodzącego za pośrednictwem publicznego adresu IP przypisanego przez usługę AKS. Typ ruchu wychodzącego loadBalancer
obsługuje usługi Kubernetes typu loadBalancer
, które oczekują ruchu wychodzącego z modułu równoważenia obciążenia utworzonego przez dostawcę zasobów usługi AKS.
W przypadku loadBalancer
ustawienia usługa AKS automatycznie ukończy następującą konfigurację:
- Publiczny adres IP jest aprowizowany dla ruchu wychodzącego klastra.
- Publiczny adres IP jest przypisywany do zasobu modułu równoważenia obciążenia.
- Pule zaplecza dla modułu równoważenia obciążenia są konfigurowane dla węzłów agenta w klastrze.
Aby uzyskać więcej informacji, zobacz używanie standardowego modułu równoważenia obciążenia w usłudze AKS.
Typ ruchu wychodzącego managedNatGateway
lub userAssignedNatGateway
Jeśli managedNatGateway
dla usługi aKS wybrano outboundType
opcję userAssignedNatGateway
, usługa AKS korzysta z bramy translatora adresów sieciowych platformy Azure na potrzeby ruchu wychodzącego klastra.
- Wybierz
managedNatGateway
w przypadku korzystania z zarządzanych sieci wirtualnych. Usługa AKS aprowizuje bramę translatora adresów sieciowych i dołącza ją do podsieci klastra. - Wybierz
userAssignedNatGateway
w przypadku korzystania z własnej sieci wirtualnej. Ta opcja wymaga aprowizowania bramy translatora adresów sieciowych przed utworzeniem klastra.
Aby uzyskać więcej informacji, zobacz używanie bramy translatora adresów sieciowych z usługą AKS.
Typ ruchu wychodzącego userDefinedRouting
Uwaga
Typ userDefinedRouting
ruchu wychodzącego jest zaawansowanym scenariuszem sieciowym i wymaga odpowiedniej konfiguracji sieci.
W przypadku userDefinedRouting
ustawienia usługa AKS nie będzie automatycznie konfigurować ścieżek ruchu wychodzącego. Konfiguracja ruchu wychodzącego musi być wykonywana przez Ciebie.
Klaster usługi AKS należy wdrożyć w istniejącej sieci wirtualnej z wcześniej skonfigurowaną podsiecią. Ponieważ nie używasz standardowej architektury modułu równoważenia obciążenia (SLB), musisz ustanowić jawny ruch wychodzący. Ta architektura wymaga jawnego wysyłania ruchu wychodzącego do urządzenia, takiego jak zapora, brama, serwer proxy lub zezwalanie na translator adresów sieciowych przez publiczny adres IP przypisany do standardowego modułu równoważenia obciążenia lub urządzenia.
Aby uzyskać więcej informacji, zobacz konfigurowanie ruchu wychodzącego klastra za pomocą routingu zdefiniowanego przez użytkownika.
Typ ruchu wychodzącego none
(wersja zapoznawcza)
Ważne
Typ none
ruchu wychodzącego wymaga starannego planowania, aby upewnić się, że klaster działa zgodnie z oczekiwaniami bez niezamierzonych zależności od usług zewnętrznych. W przypadku w pełni izolowanych klastrów zobacz zagadnienia dotyczące izolowanego klastra.
W przypadku none
ustawienia usługa AKS nie będzie automatycznie konfigurować ścieżek ruchu wychodzącego. Ta opcja jest podobna do userDefinedRouting
tej, ale nie wymaga trasy domyślnej w ramach walidacji.
Typ none
ruchu wychodzącego jest obsługiwany zarówno w scenariuszach sieci wirtualnej "przynieś własne urządzenie" (BYO) jak i w scenariuszach zarządzanych sieci wirtualnych. Należy jednak upewnić się, że klaster usługi AKS jest wdrożony w środowisku sieciowym, w którym jawne ścieżki ruchu wychodzącego są zdefiniowane w razie potrzeby. W przypadku scenariuszy sieci wirtualnej BYO klaster musi zostać wdrożony w istniejącej sieci wirtualnej z wcześniej skonfigurowaną podsiecią. Ponieważ usługa AKS nie aprowizować standardowego modułu równoważenia obciążenia ani żadnej infrastruktury ruchu wychodzącego, należy w razie potrzeby ustanowić jawne ścieżki ruchu wychodzącego. Może to obejmować kierowanie ruchu do zapory, serwera proxy, bramy lub innych niestandardowych konfiguracji sieci.
Typ ruchu wychodzącego block
(wersja zapoznawcza)
Ważne
Typ block
ruchu wychodzącego wymaga starannego planowania, aby upewnić się, że nie istnieją niezamierzone zależności sieciowe. W przypadku w pełni izolowanych klastrów zobacz zagadnienia dotyczące izolowanego klastra.
W przypadku block
ustawienia usługa AKS skonfiguruje reguły sieci, aby aktywnie blokować cały ruch wychodzący z klastra. Ta opcja jest przydatna w przypadku środowisk o wysokim poziomie bezpieczeństwa, w których łączność wychodząca musi być ograniczona.
W przypadku korzystania z polecenia block
:
- Usługa AKS zapewnia, że żaden publiczny ruch internetowy nie może opuścić klastra za pośrednictwem reguł sieciowej grupy zabezpieczeń. Nie ma to wpływu na ruch w sieci wirtualnej.
- Należy jawnie zezwolić na dowolny wymagany ruch wychodzący za pośrednictwem dodatkowych konfiguracji sieci.
Opcja block
zapewnia dodatkowy poziom izolacji sieci, ale wymaga starannego planowania, aby uniknąć przerywania obciążeń lub zależności.
Aktualizowanie outboundType
po utworzeniu klastra
Zmiana typu ruchu wychodzącego po utworzeniu klastra spowoduje wdrożenie lub usunięcie zasobów zgodnie z wymaganiami, aby umieścić klaster w nowej konfiguracji ruchu wychodzącego.
W poniższych tabelach przedstawiono obsługiwane ścieżki migracji między typami ruchu wychodzącego dla zarządzanych i zarządzanych sieci wirtualnych BYO.
Obsługiwane ścieżki migracji dla zarządzanej sieci wirtualnej
Każdy wiersz pokazuje, czy typ ruchu wychodzącego można migrować do typów wymienionych u góry. "Obsługiwane" oznacza, że migracja jest możliwa, natomiast "Nieobsługiwane" lub "N/A" oznacza, że nie jest.
Od|Do | loadBalancer |
managedNATGateway |
userAssignedNATGateway |
userDefinedRouting |
none |
block |
---|---|---|---|---|---|---|
loadBalancer |
Nie dotyczy | Obsługiwane | Nieobsługiwany | Nieobsługiwany | Obsługiwane | Obsługiwane |
managedNATGateway |
Obsługiwane | Nie dotyczy | Nieobsługiwany | Nieobsługiwany | Obsługiwane | Obsługiwane |
userAssignedNATGateway |
Nieobsługiwany | Nieobsługiwany | Nie dotyczy | Nieobsługiwany | Nieobsługiwany | Nieobsługiwany |
none |
Obsługiwane | Obsługiwane | Nieobsługiwany | Nieobsługiwany | Nie dotyczy | Obsługiwane |
block |
Obsługiwane | Obsługiwane | Nieobsługiwany | Nieobsługiwany | Obsługiwane | Nie dotyczy |
Obsługiwane ścieżki migracji dla sieci wirtualnej BYO
Od|Do | loadBalancer |
managedNATGateway |
userAssignedNATGateway |
userDefinedRouting |
none |
block |
---|---|---|---|---|---|---|
loadBalancer |
Nie dotyczy | Nieobsługiwany | Obsługiwane | Obsługiwane | Obsługiwane | Nieobsługiwany |
managedNATGateway |
Nieobsługiwany | Nie dotyczy | Nieobsługiwany | Nieobsługiwany | Nieobsługiwany | Nieobsługiwany |
userAssignedNATGateway |
Obsługiwane | Nieobsługiwany | Nie dotyczy | Obsługiwane | Obsługiwane | Nieobsługiwany |
userDefinedRouting |
Obsługiwane | Nieobsługiwany | Obsługiwane | Nie dotyczy | Obsługiwane | Nieobsługiwany |
none |
Obsługiwane | Nieobsługiwany | Obsługiwane | Obsługiwane | Nie dotyczy | Nieobsługiwany |
Migracja jest obsługiwana tylko między elementami loadBalancer
managedNATGateway
(w przypadku korzystania z zarządzanej sieci wirtualnej) userAssignedNATGateway
i userDefinedRouting
(jeśli używasz niestandardowej sieci wirtualnej).
Ostrzeżenie
Migracja typu ruchu wychodzącego do typów zarządzanych przez użytkownika (userAssignedNATGateway
i userDefinedRouting
) spowoduje zmianę wychodzących publicznych adresów IP klastra.
Jeśli włączone są autoryzowane zakresy adresów IP, upewnij się, że nowy zakres adresów IP dla ruchu wychodzącego jest dołączany do autoryzowanego zakresu adresów IP.
Ostrzeżenie
Zmiana typu ruchu wychodzącego w klastrze jest destrukcyjna dla łączności sieciowej i spowoduje zmianę adresu IP wychodzącego klastra. Jeśli skonfigurowano jakiekolwiek reguły zapory w celu ograniczenia ruchu z klastra, należy je zaktualizować, aby były zgodne z nowym adresem IP ruchu wychodzącego.
Aktualizowanie klastra w celu użycia nowego typu ruchu wychodzącego
Uwaga
Aby przeprowadzić migrację typu wychodzącego, musisz użyć wersji >= 2.56 interfejsu wiersza polecenia platformy Azure. Użyj az upgrade
polecenia , aby zaktualizować do najnowszej wersji interfejsu wiersza polecenia platformy Azure.
- Zaktualizuj konfigurację ruchu wychodzącego klastra przy użyciu
az aks update
polecenia .
Aktualizowanie klastra z modułu równoważenia obciążenia do elementu managedNATGateway
az aks update --resource-group <resourceGroup> --name <clusterName> --outbound-type managedNATGateway --nat-gateway-managed-outbound-ip-count <number of managed outbound ip>
Aktualizowanie klastra z elementu managedNATGateway do modułu równoważenia obciążenia
az aks update --resource-group <resourceGroup> --name <clusterName> \
--outbound-type loadBalancer \
<--load-balancer-managed-outbound-ip-count <number of managed outbound ip>| --load-balancer-outbound-ips <outbound ip ids> | --load-balancer-outbound-ip-prefixes <outbound ip prefix ids> >
Ostrzeżenie
Nie używaj ponownie adresu IP, który jest już używany w poprzednich konfiguracjach ruchu wychodzącego.
Aktualizowanie klastra z elementu managedNATGateway do userDefinedRouting
- Dodaj trasę
0.0.0.0/0
do domyślnej tabeli tras. Zapoznaj się z tematem Dostosowywanie ruchu wychodzącego klastra przy użyciu tabeli routingu zdefiniowanej przez użytkownika w usłudze Azure Kubernetes Service (AKS)
az aks update --resource-group <resourceGroup> --name <clusterName> --outbound-type userDefinedRouting
Aktualizowanie klastra z modułu równoważenia obciążenia do elementu userAssignedNATGateway w scenariuszu sieci wirtualnej BYO
- Skojarz bramę translatora adresów sieciowych z podsiecią, z której jest skojarzone obciążenie. Zapoznaj się z artykułem Tworzenie zarządzanej lub przypisanej przez użytkownika bramy translatora adresów sieciowych
az aks update --resource-group <resourceGroup> --name <clusterName> --outbound-type userAssignedNATGateway
Następne kroki
- Konfigurowanie standardowego równoważenia obciążenia w klastrze usługi AKS
- Konfigurowanie bramy translatora adresów sieciowych w klastrze usługi AKS
- Konfigurowanie routingu zdefiniowanego przez użytkownika w klastrze usługi AKS
- Dokumentacja bramy translatora adresów sieciowych
- Omówienie trasy zdefiniowanej przez użytkownika sieci platformy Azure
- Zarządzanie tabelami tras
Azure Kubernetes Service