Usługa AKS włączona przez wymagania sieciowe usługi Azure Arc
Dotyczy: Azure Stack HCI, wersja 23H2
W tym artykule przedstawiono podstawowe pojęcia dotyczące sieci maszyn wirtualnych i aplikacji w usłudze AKS włączone przez usługę Azure Arc. W tym artykule opisano również wymagania wstępne dotyczące sieci wymagane do tworzenia klastrów Kubernetes. Zalecamy pracę z administratorem sieci w celu zapewnienia i skonfigurowania parametrów sieci wymaganych do wdrożenia usługi AKS włączonej przez usługę Arc.
W tym artykule koncepcyjnym przedstawiono następujące kluczowe składniki. Te składniki wymagają statycznego adresu IP w celu utworzenia i pomyślnego działania klastra usługi AKS Arc i aplikacji:
- Maszyny wirtualne klastra usługi AKS
- Adres IP płaszczyzny sterowania usługi AKS
- Moduł równoważenia obciążenia dla konteneryzowanych aplikacji
Sieć dla maszyn wirtualnych klastra usługi AKS
Węzły Kubernetes są wdrażane jako wyspecjalizowane maszyny wirtualne w usłudze AKS włączone przez usługę Arc. Te maszyny wirtualne są przydzielane adresom IP w celu umożliwienia komunikacji między węzłami kubernetes. Usługa AKS Arc używa sieci logicznych usługi Azure Stack HCI do dostarczania adresów IP i sieci dla bazowych maszyn wirtualnych klastrów Kubernetes. Aby uzyskać więcej informacji na temat sieci logicznych, zobacz Sieci logiczne dla usługi Azure Stack HCI. Należy zaplanować rezerwę jednego adresu IP na maszynę wirtualną węzła klastra usługi AKS w środowisku azure Stack HCI.
Uwaga
Statyczny adres IP jest jedynym obsługiwanym trybem przypisywania adresu IP do maszyn wirtualnych usługi AKS Arc. Dzieje się tak, ponieważ platforma Kubernetes wymaga, aby adres IP przypisany do węzła Kubernetes był stały w całym cyklu życia klastra Kubernetes.
Aby użyć sieci logicznej dla operacji tworzenia klastra usługi AKS Arc, wymagane są następujące parametry:
Parametr sieci logicznej | Opis | Wymagany parametr dla klastra usługi AKS Arc |
---|---|---|
--address-prefixes |
AddressPrefix dla sieci. Obecnie obsługiwany jest tylko 1 prefiks adresu. Użycie: --address-prefixes "10.220.32.16/24" . |
|
--dns-servers |
Rozdzielona spacjami lista adresów IP serwera DNS. Użycie: --dns-servers 10.220.32.16 10.220.32.17 . |
|
--gateway |
Bramy. Adres IP bramy musi należeć do zakresu prefiksu adresu. Użycie: --gateway 10.220.32.16 . |
|
--ip-allocation-method |
Metoda alokacji adresu IP. Obsługiwane wartości to "Static". Użycie: --ip-allocation-method "Static" . |
|
--ip-pool-start |
Początkowy adres IP puli adresów IP. Adres musi być w zakresie prefiksu adresu. Użycie: --ip-pool-start "10.220.32.18" . |
|
--ip-pool-end |
Końcowy adres IP puli adresów IP. Adres musi być w zakresie prefiksu adresu. Użycie: --ip-pool-end "10.220.32.38" . |
|
--vm-switch-name |
Nazwa przełącznika maszyny wirtualnej. Użycie: --vm-switch-name "vm-switch-01" . |
Adres IP płaszczyzny sterowania
Platforma Kubernetes używa płaszczyzny sterowania, aby upewnić się, że każdy składnik w klastrze Kubernetes jest przechowywany w żądanym stanie. Płaszczyzna sterowania zarządza również węzłami procesu roboczego, które przechowują konteneryzowane aplikacje. Usługa AKS włączona przez usługę Arc wdraża moduł równoważenia obciążenia KubeVIP, aby upewnić się, że adres IP serwera interfejsu API płaszczyzny sterowania Kubernetes jest dostępny przez cały czas. To wystąpienie KubeVIP wymaga poprawnego działania pojedynczego niezmiennego "adresu IP płaszczyzny sterowania".
Uwaga
Adres IP płaszczyzny sterowania jest wymaganym parametrem do utworzenia klastra Kubernetes. Należy upewnić się, że adres IP płaszczyzny sterowania klastra Kubernetes nie nakłada się na inne elementy, w tym sieci logiczne maszyny wirtualnej arc, adresy IP sieci infrastruktury, moduły równoważenia obciążenia itp. Adres IP płaszczyzny sterowania musi również znajdować się w zakresie prefiksu adresu sieci logicznej, ale poza pulą adresów IP. Dzieje się tak, ponieważ pula adresów IP jest używana tylko dla maszyn wirtualnych, a jeśli wybierzesz adres IP z puli adresów IP dla płaszczyzny sterowania, może to spowodować konflikt adresów IP. Nakładające się adresy IP mogą prowadzić do nieoczekiwanych awarii klastra usługi AKS i dowolnego innego miejsca, w jakim jest używany adres IP. W środowisku należy zarezerwować jeden adres IP dla klastra Kubernetes.
Adresy IP modułu równoważenia obciążenia dla aplikacji konteneryzowanych
Głównym celem modułu równoważenia obciążenia jest dystrybucja ruchu między wieloma węzłami w klastrze Kubernetes. To równoważenie obciążenia może pomóc zapobiec przestojom i poprawić ogólną wydajność aplikacji. Usługa AKS obsługuje następujące opcje wdrażania modułu równoważenia obciążenia dla klastra Kubernetes:
- Wdrażanie modułu równoważenia obciążenia z modułem MetalLB przy użyciu rozszerzenia usługi Azure Arc.
- Korzystanie z własnego modułu równoważenia obciążenia innej firmy.
Niezależnie od tego, czy wybierasz rozszerzenie MetalLB Arc, czy używasz własnego modułu równoważenia obciążenia, musisz podać zestaw adresów IP do usługi modułu równoważenia obciążenia. Do wyboru są następujące opcje:
- Podaj adresy IP usług z tej samej podsieci co maszyny wirtualne usługi AKS Arc.
- Użyj innej sieci i listy adresów IP, jeśli aplikacja wymaga zewnętrznego równoważenia obciążenia.
Niezależnie od wybranej opcji należy upewnić się, że adresy IP przydzielone do modułu równoważenia obciążenia nie powodują konfliktu z adresami IP w sieci logicznej ani adresami IP płaszczyzny sterowania dla klastrów Kubernetes. Powodujące konflikty adresy IP mogą prowadzić do nieprzewidzianych awarii we wdrożeniu i aplikacjach usługi AKS.
Proste planowanie adresów IP dla klastrów i aplikacji Kubernetes
W poniższym scenariuszu opisano rezerwowanie adresów IP z jednej sieci dla klastrów i usług Kubernetes. Jest to najprostszy i najprostszy scenariusz przypisywania adresów IP.
Wymaganie dotyczące adresu IP | Minimalna liczba adresów IP | Jak i gdzie dokonać tej rezerwacji |
---|---|---|
Adresy IP maszyn wirtualnych usługi AKS Arc | Rezerwuj jeden adres IP dla każdego węzła procesu roboczego w klastrze Kubernetes. Jeśli na przykład chcesz utworzyć 3 pule węzłów z 3 węzłami w każdej puli węzłów, musisz mieć 9 adresów IP w puli adresów IP. | Rezerwuj adresy IP dla maszyn wirtualnych usługi AKS Arc za pośrednictwem pul adresów IP w sieci logicznej maszyny wirtualnej usługi Arc. |
Adresy IP uaktualnienia wersji usługi AKS Arc K8s | Ponieważ usługa AKS Arc wykonuje uaktualnienia stopniowe, rezerwuj jeden adres IP dla każdego klastra usługi AKS Arc dla operacji uaktualniania wersji platformy Kubernetes. | Rezerwuj adresy IP dla operacji uaktualniania wersji K8s za pośrednictwem pul adresów IP w sieci logicznej maszyny wirtualnej usługi Arc. |
Adres IP płaszczyzny sterowania | Rezerwuj jeden adres IP dla każdego klastra Kubernetes w danym środowisku. Jeśli na przykład chcesz utworzyć 5 klastrów w sumie, zarezerwuj 5 adresów IP, po jednym dla każdego klastra Kubernetes. | Rezerwuj adresy IP adresów IP płaszczyzny sterowania w tej samej podsieci co sieć logiczna maszyny wirtualnej usługi Arc, ale poza określoną pulą adresów IP. |
Adresy IP modułu równoważenia obciążenia | Liczba zarezerwowanych adresów IP zależy od modelu wdrażania aplikacji. Jako punkt początkowy można zarezerwować jeden adres IP dla każdej usługi Kubernetes. | Rezerwuj adresy IP adresów IP płaszczyzny sterowania w tej samej podsieci co sieć logiczna maszyny wirtualnej usługi Arc, ale poza określoną pulą adresów IP. |
Przykładowy przewodnik dotyczący rezerwacji adresów IP dla klastrów i aplikacji Kubernetes
Jane jest administratorem IT, który dopiero zaczyna się od usługi AKS włączonej przez usługę Azure Arc. Chce wdrożyć dwa klastry Kubernetes: klaster Kubernetes A i klaster Kubernetes B w klastrze Azure Stack HCI. Chce również uruchomić aplikację do głosowania na szczycie klastra A. Ta aplikacja ma trzy wystąpienia interfejsu użytkownika frontonu działającego w dwóch klastrach i jedno wystąpienie bazy danych zaplecza. Wszystkie jej klastry i usługi AKS działają w jednej sieci z jedną podsiecią.
- Klaster Kubernetes A ma 3 węzły płaszczyzny sterowania i 5 węzłów roboczych.
- Klaster Kubernetes B ma 1 węzeł płaszczyzny sterowania i 3 węzły robocze.
- 3 wystąpienia interfejsu użytkownika frontonu (port 443).
- 1 wystąpienie bazy danych zaplecza (port 80).
Na podstawie poprzedniej tabeli musi zarezerwować łącznie 19 adresów IP w jej podsieci:
- 8 adresów IP maszyn wirtualnych węzła usługi A usługi A w węźle usługi A (jeden adres IP na maszynę wirtualną węzła K8s).
- 4 adresy IP maszyn wirtualnych węzła usługi AKS Arc w klastrze B (jeden adres IP na maszynę wirtualną węzła K8s).
- 2 adresy IP do uruchamiania operacji uaktualniania usługi AKS Arc (jeden adres IP na klaster usługi AKS Arc).
- 2 adresy IP płaszczyzny sterowania usługi AKS Arc (jeden adres IP na klaster usługi AKS Arc)
- 3 adresy IP usługi Kubernetes (jeden adres IP na wystąpienie interfejsu użytkownika frontonu, ponieważ wszystkie używają tego samego portu. Baza danych zaplecza może używać dowolnego z trzech adresów IP, o ile używa innego portu).
Kontynuując ten przykład i dodając go do poniższej tabeli, uzyskasz następujące informacje:
Parametr | Liczba adresów IP | Jak i gdzie dokonać tej rezerwacji |
---|---|---|
Uaktualnianie wersji maszyn wirtualnych usługi AKS Arc i K8s | Rezerwuj 14 adresów IP | Utwórz tę rezerwację za pośrednictwem pul adresów IP w sieci logicznej usługi Azure Stack HCI. |
Adres IP płaszczyzny sterowania | Rezerwuj 2 adresy IP, jeden dla klastra usługi AKS Arc | Użyj parametru , controlPlaneIP aby przekazać adres IP dla adresu IP płaszczyzny sterowania. Upewnij się, że ten adres IP znajduje się w tej samej podsieci co sieć logiczna arc, ale poza pulą adresów IP zdefiniowaną w sieci logicznej usługi Arc. |
Adresy IP modułu równoważenia obciążenia | 3 adres IP dla usług Kubernetes, dla aplikacji do głosowania Jane. | Te adresy IP są używane podczas instalowania modułu równoważenia obciążenia w klastrze A. Możesz użyć rozszerzenia MetalLB Arc lub przenieść własny moduł równoważenia obciążenia innej firmy. Upewnij się, że ten adres IP znajduje się w tej samej podsieci co sieć logiczna usługi Arc, ale poza pulą adresów IP zdefiniowaną w sieci logicznej maszyny wirtualnej arc. |
Ustawienia serwera proxy
Ustawienia serwera proxy w usłudze AKS są dziedziczone z bazowego systemu infrastruktury. Funkcja ustawiania poszczególnych ustawień serwera proxy dla klastrów Kubernetes i zmiany ustawień serwera proxy nie jest jeszcze obsługiwana.
Wymagania dotyczące portów sieciowych & między sieciami VLAN
Podczas wdrażania rozwiązania Azure Stack HCI przydzielasz ciągły blok co najmniej sześciu statycznych adresów IP w podsieci sieci zarządzania, pomijając adresy już używane przez serwery fizyczne. Te adresy IP są używane przez usługę Azure Stack HCI i infrastrukturę wewnętrzną (mostek zasobów arc) na potrzeby zarządzania maszynami wirtualnymi usługi Arc i usługi AKS Arc. Jeśli sieć zarządzania, która udostępnia adresy IP do usług Azure Stack HCI związanych z mostkiem zasobów usługi Arc, znajdują się w innej sieci VLAN niż sieć logiczna używana do tworzenia klastrów usługi AKS, należy upewnić się, że następujące porty są otwarte, aby pomyślnie utworzyć i obsługiwać klaster usługi AKS.
Port docelowy | Element docelowy | Źródło | Opis | Uwagi dotyczące sieci między sieciami VLAN |
---|---|---|---|---|
22 | Sieć logiczna używana dla maszyn wirtualnych usługi AKS Arc | Adresy IP w sieci zarządzania | Wymagane do zbierania dzienników na potrzeby rozwiązywania problemów. | Jeśli używasz oddzielnych sieci VLAN, adresy IP w sieci zarządzania używanej dla usług Azure Stack HCI i Arc Resource Bridge muszą uzyskiwać dostęp do maszyn wirtualnych klastra usługi AKS Arc na tym porcie. |
6443 | Sieć logiczna używana dla maszyn wirtualnych usługi AKS Arc | Adresy IP w sieci zarządzania | Wymagane do komunikowania się z interfejsami API platformy Kubernetes. | Jeśli używasz oddzielnych sieci VLAN, adresy IP w sieci zarządzania używanej dla usług Azure Stack HCI i Arc Resource Bridge muszą uzyskiwać dostęp do maszyn wirtualnych klastra usługi AKS Arc na tym porcie. |
55000 | Adresy IP w sieci zarządzania | Sieć logiczna używana dla maszyn wirtualnych usługi AKS Arc | Serwer gRPC agenta chmury | Jeśli używasz oddzielnych sieci VLAN, maszyny wirtualne usługi AKS Arc muszą uzyskiwać dostęp do adresów IP w sieci zarządzania używanej dla adresu IP agenta w chmurze i adresu IP klastra na tym porcie. |
65000 | Adresy IP w sieci zarządzania | Sieć logiczna używana dla maszyn wirtualnych usługi AKS Arc | Uwierzytelnianie gRPC agenta chmury | Jeśli używasz oddzielnych sieci VLAN, maszyny wirtualne usługi AKS Arc muszą uzyskiwać dostęp do adresów IP w sieci zarządzania używanej dla adresu IP agenta w chmurze i adresu IP klastra na tym porcie. |
Wyjątki adresów URL zapory
Aby uzyskać informacje na temat listy dozwolonych adresów URL zapory/serwera proxy usługi Azure Arc, zobacz wymagania dotyczące sieci mostka zasobów usługi Azure Arc i wymagania dotyczące sieci usługi Azure Stack HCI 23H2.
W przypadku wdrażania i działania klastrów Kubernetes następujące adresy URL muszą być dostępne ze wszystkich węzłów fizycznych i maszyn wirtualnych usługi AKS Arc we wdrożeniu. Upewnij się, że te adresy URL są dozwolone w konfiguracji zapory:
Adres URL | Port | Usługa | Uwagi |
---|---|---|---|
https://mcr.microsoft.com |
443 | Rejestr kontenerów firmy Microsoft | Służy do oficjalnych artefaktów firmy Microsoft, takich jak obrazy kontenerów. |
https://*.his.arc.azure.com |
443 | Usługa tożsamości azure Arc | Służy do obsługi tożsamości i kontroli dostępu. |
https://*.dp.kubernetesconfiguration.azure.com |
443 | Kubernetes | Służy do konfigurowania usługi Azure Arc. |
https://*.servicebus.windows.net |
443 | Łączenie klastra | Służy do bezpiecznego nawiązywania połączenia z klastrami Kubernetes z włączoną usługą Azure Arc bez konieczności włączania żadnego portu przychodzącego w zaporze. |
https://guestnotificationservice.azure.com |
443 | Usługa powiadomień | Służy do obsługi operacji powiadomień gościa. |
https://*.dp.prod.appliances.azure.com |
443 | Usługa płaszczyzny danych | Służy do operacji płaszczyzny danych dla mostka zasobów (urządzenia). |
*.data.mcr.microsoft.com azurearcfork8s.azurecr.io linuxgeneva-microsoft.azurecr.io pipelineagent.azurecr.io ecpacr.azurecr.io |
443 | Pobieranie agenta | Służy do pobierania obrazów i agentów. |
*.prod.microsoftmetrics.com *.prod.hot.ingestion.msftcloudes.com dc.services.visualstudio.com *.prod.warm.ingest.monitor.core.windows.net gcs.prod.monitoring.core.windows.net |
443 | Metryki i monitorowanie kondycji | Służy do monitorowania ruchu telemetrycznego i metryk. |
*.blob.core.windows.net *.dl.delivery.mp.microsoft.com *.do.dsp.mp.microsoft.com |
443 | TCP | Służy do pobierania obrazów mostka zasobów (urządzenia). |
https://azurearcfork8sdev.azurecr.io |
443 | Kubernetes | Służy do pobierania obrazów kontenerów usługi Azure Arc for Kubernetes. |
https://adhs.events.data.microsoft.com |
443 | Telemetria | ADHS to usługa telemetrii uruchomiona wewnątrz urządzenia/systemu operacyjnego mariner. Używane okresowo do wysyłania wymaganych danych diagnostycznych do firmy Microsoft z węzłów płaszczyzny sterowania. Używane, gdy telemetria spada z mariner, co oznacza dowolną płaszczyznę sterowania Kubernetes. |
https://v20.events.data.microsoft.com |
443 | Telemetria | Używane okresowo do wysyłania wymaganych danych diagnostycznych do firmy Microsoft z hosta systemu Windows Server. |
gcr.io |
443 | Rejestr kontenerów Google | Używane w przypadku oficjalnych artefaktów platformy Kubernetes, takich jak obrazy podstawowe kontenerów. |
pypi.org |
443 | Pakiet języka Python | Zweryfikuj wersje platformy Kubernetes i języka Python. |
*.pypi.org |
443 | Pakiet języka Python | Zweryfikuj wersje platformy Kubernetes i języka Python. |
https://hybridaks.azurecr.io |
443 | Obraz kontenera | Wymagane do uzyskania dostępu do obrazu operatora HybridAKS. |
aka.ms |
443 | az extensions | Wymagane do pobrania rozszerzeń interfejsu wiersza polecenia platformy Azure, takich jak aksarc i connectedk8s. |
*.login.microsoft.com |
443 | Azure | Wymagany do pobierania i aktualizowania tokenów usługi Azure Resource Manager. |
sts.windows.net |
443 | Azure Arc | W scenariuszu opartym na połączeniu klastra i lokalizacji niestandardowej. |
hybridaksstorage.z13.web.core.windows.net |
443 | Azure Stack HCI | Statyczna witryna internetowa AKSHCI hostowana w usłudze Azure Storage. |
raw.githubusercontent.com |
443 | GitHub | Używane w usłudze GitHub. |
www.microsoft.com |
80 | Oficjalna witryna internetowa firmy Microsoft. | Oficjalna witryna internetowa firmy Microsoft. |
*.prod.do.dsp.mp.microsoft.com |
443 | Microsoft Update | Pobieranie obrazu mostka zasobów (urządzenia). |
files.pythonhosted.org |
443 | Pakiet języka Python | Pakiet języka Python. |
Następne kroki
Twórca sieci logiczne dla klastrów Kubernetes w usłudze Azure Stack HCI 23H2
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla