Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W przypadku opartego na kontenerach podejścia mikrousług do tworzenia aplikacji składniki aplikacji współpracują ze sobą w celu przetwarzania zadań. Platforma Kubernetes udostępnia różne zasoby umożliwiające współpracę:
- Możesz łączyć się z aplikacjami i uwidaczniać je wewnętrznie lub zewnętrznie.
- Aplikacje o wysokiej dostępności można tworzyć, równoważąc obciążenie aplikacji.
- Możesz ograniczyć przepływ ruchu sieciowego do zasobników i węzłów lub między nimi, aby zwiększyć bezpieczeństwo.
- Można skonfigurować ruch przychodzący Ingress do terminacji SSL/TLS lub routingu wielu składników dla bardziej złożonych aplikacji.
W tym artykule przedstawiono podstawowe pojęcia, które zapewniają sieciowanie aplikacjom na platformie AKS.
Podstawy sieci platformy Kubernetes
Platforma Kubernetes wykorzystuje warstwę sieci wirtualnej do zarządzania dostępem w aplikacjach i między aplikacjami lub ich składnikami:
Węzły kubernetes i sieć wirtualna: węzły Kubernetes są połączone z siecią wirtualną. Ta konfiguracja umożliwia zasobnikom (podstawowym jednostkom wdrażania na platformie Kubernetes) łączność przychodzącą i wychodzącą.
Komponent trasowania usług: W zależności od płaszczyzny danych sieci węzły używają do trasowania usług Kubernetes rozwiązania
kube-proxylub Cilium. Klastry AKS, które używają Azure CNI Powered by Cilium, nie używająkube-proxy.
Dotyczy określonych funkcji platformy Kubernetes:
- Moduł równoważenia obciążenia: moduł równoważenia obciążenia umożliwia równomierne dystrybuowanie ruchu sieciowego między różnymi zasobami.
- Kontrolery ingresowe: Ułatwiają one routing na poziomie warstwy 7, co jest niezbędne do kierowania ruchem aplikacji.
- Kontrola ruchu wychodzącego: platforma Kubernetes umożliwia zarządzanie ruchem wychodzącym z węzłów klastra i sterowanie nim.
- Zasady sieciowe: te zasady umożliwiają środki zabezpieczeń i filtrowanie ruchu sieciowego w zasobnikach.
W kontekście platformy Azure:
- Azure usprawnia sieć wirtualną dla klastrów usługi AKS (Azure Kubernetes Service).
- Utworzenie równoważnika obciążenia Kubernetes na Azure jednocześnie konfiguruje odpowiedni zasób równoważnika obciążenia w Azure.
- Gdy utworzysz usługę Kubernetes
LoadBalancerService, platforma Azure skonfiguruje niezbędne reguły sieciowej grupy zabezpieczeń dla ruchu związanego z usługą w zasobach zarządzanych przez AKS. - Azure może również zarządzać zewnętrznymi konfiguracjami DNS na potrzeby routingu aplikacji HTTP w miarę tworzenia nowych tras Ingress.
Azure sieci wirtualnych
W usłudze AKS można wdrożyć klaster, który używa jednego z następujących modeli sieciowych:
- Model sieci nakładki: Sieć nakładki jest najczęściej używanym modelem sieciowym w Kubernetes. Zasobniki otrzymują adres IP z prywatnej, logicznie oddzielnej przestrzeni adresowej CIDR z podsieci sieci wirtualnej Azure, w której uruchomione są węzły AKS. Ten model zapewnia prostszą, lepszą skalowalność w porównaniu z modelem sieci płaskiej.
- Model sieci płaskiej: model sieci płaskiej w usłudze AKS przypisuje adresy IP do zasobników z podsieci w tej samej sieci wirtualnej Azure co węzły usługi AKS. W przypadku ruchu sieci prywatnej źródłowy adres IP widoczny dla miejsca docelowego zależy od wybranej opcji zarządzania adresami IP (IPAM). Azure CNI Pod Subnet zachowuje adres IP poda między połączonymi sieciami wirtualnymi. W przypadku podsieci węzłów Azure CNI miejsca docelowe w sieci wirtualnej klastra widzą adres IP podu, ale miejsca docelowe poza siecią wirtualną klastra widzą adres IP węzła. W przypadku ruchu wychodzącego z Internetu skonfigurowana metoda ruchu wychodzącego określa publiczny źródłowy adres IP widoczny dla miejsc docelowych w Internecie.
Aby uzyskać więcej informacji na temat modeli sieciowych w usłudze AKS, zobacz CNI Networking in AKS (Sieci CNI w usłudze AKS).
Kontrolowanie ruchu wyjściowego
Klastry AKS są wdrażane w sieci wirtualnej i mają zależności wychodzące od usług spoza tej sieci wirtualnej, które są prawie całkowicie zdefiniowane z w pełni kwalifikowanymi nazwami domen (FQDN). Usługa AKS udostępnia kilka opcji konfiguracji ruchu wychodzącego, które umożliwiają dostosowanie sposobu uzyskiwania dostępu do tych zasobów zewnętrznych.
Ważne
Począwszy od March 31, 2026 Azure Kubernetes Service (AKS) nie obsługuje już domyślnego dostępu wychodzącego dla maszyn wirtualnych. Nowe klastry usługi AKS korzystające z opcji sieci wirtualnej zarządzanej przez usługę AKS będą domyślnie umieszczać podsieci klastra w podsieciach prywatnych (defaultOutboundAccess = false). To ustawienie nie ma wpływu na ruch klastra zarządzanego przez usługę AKS, który używa jawnie skonfigurowanych ścieżek wychodzących. Może to mieć wpływ na nieobsługiwane scenariusze, takie jak wdrażanie innych zasobów w tej samej podsieci. Ta zmiana nie ma wpływu na klastry korzystające z sieci wirtualnych BYO . W obsługiwanych konfiguracjach nie jest wymagana żadna akcja. Aby uzyskać więcej informacji na temat tego wycofania, zobacz ogłoszenie o wycofaniu usługi Azure Updates. Aby być na bieżąco z ogłoszeniami i aktualizacjami, śledź uwagi o wydaniu AKS.
Opcje konfiguracji ruchu wychodzącego
Aby uzyskać więcej informacji na temat obsługiwanych typów konfiguracji ruchu wychodzącego dla klastrów usługi AKS, zobacz Konfiguracja ruchu wychodzącego z typami w Azure Kubernetes Service (AKS).
Domyślnie klastry AKS mają nieograniczony wychodzący dostęp do Internetu, co pozwala węzłom i usługom uzyskać dostęp do zasobów zewnętrznych zgodnie z potrzebami. W razie potrzeby można ograniczyć ruch wychodzący.
Aby uzyskać więcej informacji na temat ograniczania ruchu wychodzącego z klastra, zobacz Kontrolowanie ruchu wychodzącego dla węzłów klastra w usłudze AKS.
Sieciowe grupy zabezpieczeń
Sieciowa grupa zabezpieczeń filtruje ruch dla maszyn wirtualnych, takich jak węzły usługi AKS. Podczas tworzenia usług, takich jak LoadBalancer, platforma Azure automatycznie konfiguruje reguły sieciowej grupy zabezpieczeń wymagane dla ruchu usługi na zasobach zarządzanych przez AKS.
Usługa AKS nie stosuje sieciowych grup zabezpieczeń do swojej podsieci ani nie modyfikuje sieciowych grup zabezpieczeń, które powiążesz z podsiecią udostępnioną przez klienta. Jeśli przypiszesz grupę zabezpieczeń sieciowych do niestandardowej podsieci, musisz upewnić się, że jej reguły zezwalają na wymagany ruch węzłów i podów. Aby uzyskać więcej informacji, zobacz Wymagania wstępne dotyczące sieci usługi AKS CNI.
Możesz także używać zasad sieciowych do automatycznego stosowania reguł filtrowania ruchu do podów.
Aby uzyskać więcej informacji, zobacz Jak sieciowe grupy zabezpieczeń filtrować ruch sieciowy.
Wymagania dotyczące niestandardowej sieci wirtualnej
Jeśli używasz własnej sieci wirtualnej w przypadku klastrów AKS i dodajesz reguły sieciowej grupy zabezpieczeń ograniczające ruch między podsieciami, upewnij się, że reguły te zezwalają na ruch wymagany przez konfigurację klastra.
Integracja z siecią wirtualną serwera API jest wstępnie skonfigurowana w usłudze AKS Automatic. W usłudze AKS Standard funkcja jest opcjonalna i należy ją jawnie włączyć. Gdy klaster korzysta z integracji serwera API z siecią wirtualną, zezwól na następujący ruch:
| Destynacja | Źródło | Protokół | Port | Użyj |
|---|---|---|---|---|
| Podsieć CIDR APIServer | Podsieć klastra | TCP | 443 i 4443 | Wymagane do umożliwienia komunikacji między węzłami systemu i serwerem API. |
| Podsieć CIDR APIServer | Azure Load Balancer | TCP | 9988 | Wymagane do włączenia komunikacji między Azure Load Balancer a serwerem interfejsu API. Możesz również włączyć całą komunikację między Azure Load Balancer a podsiecią serwera API CIDR. |
Aby uzyskać więcej informacji, zobacz Api Server VNet Integration (Integracja z siecią wirtualną serwera api).
W przypadku komunikacji między węzłami i podami zezwól na następujący ruch, jeśli reguły sieciowej grupy zabezpieczeń ograniczają odpowiadające im zakresy CIDR:
| Destynacja | Źródło | Protokół | Port | Użyj |
|---|---|---|---|---|
| CIDR węzła | CIDR węzła | Wszystkie protokoły | Wszystkie porty | Wymagane do włączenia komunikacji między węzłami. |
| CIDR Pod-a | CIDR węzła | Wszystkie protokoły | Wszystkie porty | Wymagane do trasowania ruchu usługowego. |
| CIDR Pod-a | CIDR Pod-a | Wszystkie protokoły | Wszystkie porty | Wymagane dla ruchu Pod do Pod i Pod do usługi, w tym ruchu DNS. |
Odpowiednie zakresy węzłów i zasobników CIDR zależą od modelu sieciowego klastra. Aby uzyskać więcej informacji, zobacz wymagania wstępne dotyczące sieci AKS CNI.
Rozwiązanie DNS
Rozpoznawanie nazw DNS jest niezbędne dla odkrywania usług i komunikacji w AKS. Domyślnie AKS używa CoreDNS do zapewniania wewnętrznego rozpoznawania nazw zasobników i usług.
W celu zwiększenia wydajności i niezawodności DNS, usługa AKS oferuje LocalDNS, która wdraża serwer proxy DNS na każdym węźle. Usługa LocalDNS rozwiązuje zapytania lokalnie, zmniejszając opóźnienia i eliminując conntrack presję tabeli z ruchu DNS. Można skonfigurować LocalDNS tak, aby podczas awarii nadrzędnych serwerów DNS zwracał odpowiedzi z pamięci podręcznej, ale buforowanie przestarzałych odpowiedzi działa tylko w miarę możliwości. LocalDNS jest szczególnie korzystne w dużych klastrach lub środowiskach z dużymi woluminami zapytań DNS.
Usługa LocalDNS jest wstępnie skonfigurowana w usłudze AKS Automatic. W standardowej warstwie AKS usługa LocalDNS jest opcjonalna i konfigurowana osobno dla każdej puli węzłów. Przed włączeniem tej funkcji w AKS Standard sprawdź wersję Kubernetes, system operacyjny węzła oraz wymagania wstępne dotyczące jednostki SKU maszyny wirtualnej. Włączenie funkcji LocalDNS w istniejącej puli węzłów powoduje ponowne utworzenie obrazów jej węzłów. Aby zapoznać się z wymaganiami wstępnymi i planowaniem wdrażania, zobacz Konfigurowanie lokalnych sieciDNS.
Zasady sieciowe
Domyślnie wszystkie zasobniki w klastrze AKS mogą wysyłać i odbierać ruch bez ograniczeń. Aby zwiększyć bezpieczeństwo, zdefiniuj reguły kontrolujące przepływ ruchu, na przykład:
- Aplikacje backendowe są widoczne tylko dla wymaganych usług frontendowych.
- Składniki bazy danych są dostępne tylko dla warstw aplikacji, które się z nimi łączą.
Zasady sieciowe to funkcja platformy Kubernetes dostępna w usłudze AKS, która umożliwia kontrolowanie przepływu ruchu między podami. Możesz zezwolić na ruch do poda lub go zablokować na podstawie takich ustawień jak przypisane etykiety, przestrzeń nazw lub port ruchu. Chociaż sieciowe grupy zabezpieczeń są lepsze dla węzłów usługi AKS, zasady sieciowe są bardziej odpowiednie, natywnym dla chmury sposobem kontrolowania przepływu ruchu dla zasobników. Ponieważ zasobniki są tworzone dynamicznie w klastrze usługi AKS, wymagane zasady sieciowe można zastosować automatycznie.
Aby uzyskać więcej informacji, zobacz Zabezpieczanie ruchu między jednostkami za pomocą polityk sieciowych w Azure Kubernetes Service (AKS).
Następne kroki
Aby rozpocząć pracę z siecią usługi AKS, utwórz i skonfiguruj klaster usługi AKS, korzystając z własnych zakresów adresów IP, używając Azure CNI Overlay lub Azure CNI.
Aby uzyskać informacje o skojarzonych najlepszych rozwiązaniach, zobacz Najlepsze rozwiązania dotyczące łączności sieciowej i zabezpieczeń w usłudze AKS.
Aby uzyskać więcej informacji na temat podstawowych pojęć związanych z platformą Kubernetes i usługą AKS, zobacz następujące artykuły: