Dela via


AKS aktiverat av Azure Arc-nätverkskrav

Gäller för: Azure Stack HCI, version 23H2

Den här artikeln beskriver grundläggande nätverksbegrepp för dina virtuella datorer och program i AKS som aktiveras av Azure Arc. Artikeln beskriver också de nödvändiga nätverkskraven för att skapa Kubernetes-kluster. Vi rekommenderar att du arbetar med en nätverksadministratör för att tillhandahålla och konfigurera de nätverksparametrar som krävs för att distribuera AKS som aktiverats av Arc.

I den här konceptuella artikeln introduceras följande viktiga komponenter. Dessa komponenter behöver en statisk IP-adress för att AKS Arc-klustret och programmen ska kunna skapa och fungera korrekt:

  • Virtuella AKS-klusterdatorer
  • IP-adress för AKS-kontrollplanet
  • Lastbalanserare för containerbaserade program

Nätverk för virtuella AKS-klusterdatorer

Kubernetes-noder distribueras som specialiserade virtuella datorer i AKS som aktiveras av Arc. Dessa virtuella datorer är allokerade IP-adresser för att aktivera kommunikation mellan Kubernetes-noder. AKS Arc använder logiska Azure Stack HCI-nätverk för att tillhandahålla IP-adresser och nätverk för de underliggande virtuella datorerna i Kubernetes-klustren. Mer information om logiska nätverk finns i Logiska nätverk för Azure Stack HCI. Du måste planera att reservera en IP-adress per virtuell dator med AKS-klusternoder i din Azure Stack HCI-miljö.

Kommentar

Statisk IP är det enda läge som stöds för att tilldela en IP-adress till virtuella AKS Arc-datorer. Det beror på att Kubernetes kräver att IP-adressen som tilldelats en Kubernetes-nod är konstant under kubernetes-klustrets livscykel. Programvarudefinierade virtuella nätverk och SDN-relaterade funktioner stöds för närvarande inte på AKS på Azure Stack HCI 23H2.

Följande parametrar krävs för att använda ett logiskt nätverk för AKS Arc-klusterskapande:

Parameter för logiskt nätverk beskrivning Obligatorisk parameter för AKS Arc-kluster
--address-prefixes AddressPrefix för nätverket. För närvarande stöds endast ett adressprefix. Användning: --address-prefixes "10.220.32.16/24". Stöds
--dns-servers Utrymmesavgränsad lista över DNS-serverns IP-adresser. Användning: --dns-servers 10.220.32.16 10.220.32.17. Stöds
--gateway Gateway. Gateway-IP-adressen måste ligga inom adressprefixets omfång. Användning: --gateway 10.220.32.16. Stöds
--ip-allocation-method Ip-adressallokeringsmetod. Värden som stöds är "Static". Användning: --ip-allocation-method "Static". Stöds
--ip-pool-start START-IP-adressen för DIN IP-pool. Adressen måste vara inom adressprefixets intervall. Användning: --ip-pool-start "10.220.32.18". Stöds
--ip-pool-end IP-adressen för ip-poolens slut. Adressen måste vara inom adressprefixets intervall. Användning: --ip-pool-end "10.220.32.38". Stöds
--vm-switch-name Namnet på växeln för den virtuella datorn. Användning: --vm-switch-name "vm-switch-01". Stöds

Ip-adress för kontrollplan

Kubernetes använder ett kontrollplan för att säkerställa att varje komponent i Kubernetes-klustret hålls i önskat tillstånd. Kontrollplanet hanterar och underhåller även de arbetsnoder som innehåller de containerbaserade programmen. AKS som aktiveras av Arc distribuerar KubeVIP-lastbalanseraren för att säkerställa att API-serverns IP-adress för Kubernetes-kontrollplanet alltid är tillgänglig. Den här KubeVIP-instansen kräver en enda oföränderlig "kontrollplans-IP-adress" för att fungera korrekt.

Kommentar

Kontrollplanets IP-adress är en obligatorisk parameter för att skapa ett Kubernetes-kluster. Du måste se till att kontrollplanets IP-adress för ett Kubernetes-kluster inte överlappar något annat, inklusive logiska arc-VM-nätverk, infrastrukturnätverks-IP-adresser, lastbalanserare osv. Kontrollplanets IP-adress måste också ligga inom omfånget för adressprefixet för det logiska nätverket, men utanför IP-poolen. Det beror på att IP-poolen endast används för virtuella datorer, och om du väljer en IP-adress från IP-poolen för kontrollplanet kan en IP-adresskonflikt uppstå. Överlappande IP-adresser kan leda till oväntade fel för både AKS-klustret och andra platser där IP-adressen används. Du måste planera att reservera en IP-adress per Kubernetes-kluster i din miljö.

Ip-adresser för lastbalanserare för containerbaserade program

Huvudsyftet med en lastbalanserare är att distribuera trafik över flera noder i ett Kubernetes-kluster. Den här belastningsutjämningen kan hjälpa till att förhindra driftstopp och förbättra programmets övergripande prestanda. AKS har stöd för följande alternativ för att distribuera en lastbalanserare för ditt Kubernetes-kluster:

Oavsett om du väljer MetalLB Arc-tillägget eller tar med din egen lastbalanserare måste du ange en uppsättning IP-adresser till lastbalanserarens tjänst. Du kan välja mellan följande alternativ:

  • Ange IP-adresser för dina tjänster från samma undernät som de virtuella AKS Arc-datorerna.
  • Använd ett annat nätverk och en lista över IP-adresser om programmet behöver extern belastningsutjämning.

Oavsett vilket alternativ du väljer måste du se till att IP-adresserna som allokerats till lastbalanseraren inte är i konflikt med IP-adresserna i det logiska nätverket eller kontrollplanets IP-adresser för dina Kubernetes-kluster. Motstridiga IP-adresser kan leda till oförutsedda fel i din AKS-distribution och dina program.

Enkel IP-adressplanering för Kubernetes-kluster och -program

I följande scenarios genomgång reserverar du IP-adresser från ett enda nätverk för dina Kubernetes-kluster och -tjänster. Det här är det enklaste och enklaste scenariot för IP-adresstilldelning.

KRAV för IP-adress Minsta antal IP-adresser Hur och var du gör den här reservationen
IP-adresser för virtuella AKS Arc-datorer Reservera en IP-adress för varje arbetsnod i ditt Kubernetes-kluster. Om du till exempel vill skapa 3 nodpooler med 3 noder i varje nodpool måste du ha 9 IP-adresser i DIN IP-pool. Reservera IP-adresser för virtuella AKS Arc-datorer via IP-pooler i det logiska arc-VM-nätverket.
AKS Arc K8s-versionsuppgraderings-IP-adresser Eftersom AKS Arc utför löpande uppgraderingar reserverar du en IP-adress för varje AKS Arc-kluster för uppgraderingsåtgärder för Kubernetes-versioner. Reservera IP-adresser för K8s-versionsuppgradering via IP-pooler i det logiska arc-VM-nätverket.
Ip-adress för kontrollplan Reservera en IP-adress för varje Kubernetes-kluster i din miljö. Om du till exempel vill skapa totalt 5 kluster reserverar du 5 IP-adresser, en för varje Kubernetes-kluster. Reservera IP-adresser för kontrollplanets IP-adresser i samma undernät som det logiska arc-vm-nätverket, men utanför den angivna IP-poolen.
IP-adresser för lastbalanserare Antalet reserverade IP-adresser beror på programdistributionsmodellen. Som utgångspunkt kan du reservera en IP-adress för varje Kubernetes-tjänst. Reservera IP-adresser för kontrollplanets IP-adresser i samma undernät som det logiska arc-vm-nätverket, men utanför den angivna IP-poolen.

Exempel på genomgång för IP-adressreservation för Kubernetes-kluster och -program

Jane är IT-administratör och har precis börjat med AKS aktiverat av Azure Arc. Hon vill distribuera två Kubernetes-kluster: Kubernetes-kluster A och Kubernetes-kluster B i sitt Azure Stack HCI-kluster. Hon vill också köra ett röstningsprogram ovanpå kluster A. Det här programmet har tre instanser av klientdelsgränssnittet som körs i de två klustren och en instans av serverdelsdatabasen. Alla hennes AKS-kluster och -tjänster körs i ett enda nätverk med ett enda undernät.

  • Kubernetes-kluster A har 3 kontrollplansnoder och 5 arbetsnoder.
  • Kubernetes-kluster B har 1 kontrollplansnod och 3 arbetsnoder.
  • 3 instanser av klientdelsgränssnittet (port 443).
  • 1 instans av serverdelsdatabasen (port 80).

Baserat på föregående tabell måste hon reservera totalt 19 IP-adresser i sitt undernät:

  • 8 IP-adresser för de virtuella AKS Arc-noddatorerna i kluster A (en VIRTUELL IP-adress per K8-nod).
  • 4 IP-adresser för de virtuella AKS Arc-noddatorerna i kluster B (en VIRTUELL IP-adress per K8-nod).
  • 2 IP-adresser för att köra AKS Arc-uppgraderingsåtgärden (en IP-adress per AKS Arc-kluster).
  • 2 IP-adresser för AKS Arc-kontrollplanet (en IP-adress per AKS Arc-kluster)
  • 3 IP-adresser för Kubernetes-tjänsten (en IP-adress per instans av klientdelsgränssnittet, eftersom alla använder samma port. Serverdelsdatabasen kan använda någon av de tre IP-adresserna så länge den använder en annan port).

Om du fortsätter med det här exemplet och lägger till det i följande tabell får du:

Parameter Antal IP-adresser Hur och var du gör den här reservationen
Uppgradering av AKS Arc-vm och K8-version Reservera 14 IP-adresser Gör den här reservationen via IP-pooler i det logiska Azure Stack HCI-nätverket.
Ip-adress för kontrollplan Reservera 2 IP-adresser, en för AKS Arc-kluster Använd parametern controlPlaneIP för att skicka IP-adressen för kontrollplanets IP-adress. Kontrollera att ip-adressen finns i samma undernät som det logiska Arc-nätverket, men utanför IP-poolen som definierats i det logiska Arc-nätverket.
IP-adresser för lastbalanserare 3 IP-adress för Kubernetes-tjänster för Janes röstningsprogram. Dessa IP-adresser används när du installerar en lastbalanserare i kluster A. Du kan använda MetalLB Arc-tillägget eller ta med din egen lastbalanserare från tredje part. Kontrollera att den här IP-adressen finns i samma undernät som det logiska Arc-nätverket, men utanför IP-poolen som definierats i det logiska arc-VM-nätverket.

Proxyinställningar

Proxyinställningar i AKS ärvs från det underliggande infrastruktursystemet. Funktionen för att ange enskilda proxyinställningar för Kubernetes-kluster och ändra proxyinställningar stöds inte ännu.

Krav för nätverksport och kors-VLAN

När du distribuerar Azure Stack HCI allokerar du ett sammanhängande block med minst sex statiska IP-adresser i hanteringsnätverkets undernät och utelämnar adresser som redan används av de fysiska servrarna. Dessa IP-adresser används av Azure Stack HCI och intern infrastruktur (Arc Resource Bridge) för hantering av virtuella Arc-datorer och AKS Arc. Om ditt hanteringsnätverk som tillhandahåller IP-adresser till Arc Resource Bridge-relaterade Azure Stack HCI-tjänster finns på ett annat VLAN än det logiska nätverk som du använde för att skapa AKS-kluster måste du se till att följande portar öppnas för att skapa och använda ett AKS-kluster.

Målport Mål Source beskrivning Anteckningar om kors-VLAN-nätverk
22 Logiskt nätverk som används för virtuella AKS Arc-datorer IP-adresser i hanteringsnätverket Krävs för att samla in loggar för felsökning. Om du använder separata virtuella lokala nätverk måste IP-adresser i hanteringsnätverket som används för Azure Stack HCI och Arc Resource Bridge komma åt de virtuella AKS Arc-klusterdatorerna på den här porten.
6443 Logiskt nätverk som används för virtuella AKS Arc-datorer IP-adresser i hanteringsnätverket Krävs för att kommunicera med Kubernetes-API:er. Om du använder separata virtuella lokala nätverk måste IP-adresser i hanteringsnätverket som används för Azure Stack HCI och Arc Resource Bridge komma åt de virtuella AKS Arc-klusterdatorerna på den här porten.
55000 IP-adresser i hanteringsnätverket Logiskt nätverk som används för virtuella AKS Arc-datorer Cloud Agent gRPC-server Om du använder separata VLAN måste de virtuella AKS Arc-datorerna komma åt IP-adresserna i hanteringsnätverket som används för molnagentens IP-adress och kluster-IP på den här porten.
65000 IP-adresser i hanteringsnätverket Logiskt nätverk som används för virtuella AKS Arc-datorer GRPC-autentisering för molnagent Om du använder separata VLAN måste de virtuella AKS Arc-datorerna komma åt IP-adresserna i hanteringsnätverket som används för molnagentens IP-adress och kluster-IP på den här porten.

Undantag för brandväggs-URL

Information om tillåtna azure Arc-brandväggs-/proxy-URL:er finns i nätverkskraven för Azure Arc-resursbryggan och Azure Stack HCI 23H2-nätverkskrav.

Kommentar

Om du distribuerar en äldre Azure Stack HCI-version , till exempel 2402 och tidigare, måste du även tillåta url:er för gcr.io och storage.googleapis.com . Dessa URL:er har tagits bort från den senaste AKS Arc-versionen.

webbadress Port Tjänst Kommentar
https://mcr.microsoft.com
*.data.mcr.microsoft.com
azurearcfork8s.azurecr.io
linuxgeneva-microsoft.azurecr.io
pipelineagent.azurecr.io
ecpacr.azurecr.io
https://azurearcfork8sdev.azurecr.io
https://hybridaks.azurecr.io
aszk8snetworking.azurecr.io
443 AKS Arc Används för officiella Microsoft-artefakter, till exempel containeravbildningar.
docker.io 443 AKS Arc Används för Kubernetes officiella artefakter, till exempel containerbasavbildningar.
hybridaksstorage.z13.web.core.windows.net 443 AKS Arc En statisk AKSHCI-webbplats som finns i Azure Storage.
*.blob.core.windows.net
*.dl.delivery.mp.microsoft.com
*.do.dsp.mp.microsoft.com
443 AKS Arc Används för nedladdning och uppdatering av AKS Arc VHD-avbildningar.
*.prod.do.dsp.mp.microsoft.com 443 AKS Arc Används för nedladdning och uppdatering av AKS Arc VHD-avbildningar.
*.login.microsoft.com 443 Azure Krävs för att hämta och uppdatera Azure Resource Manager-token för att logga in på Azure.
https://*.his.arc.azure.com 443 Azure Arc-aktiverade K8:ar Används för Arc-agenters identitets- och åtkomstkontroll.
https://*.dp.kubernetesconfiguration.azure.com 443 Azure Arc-aktiverade K8:ar Används för Azure Arc-konfiguration.
https://*.servicebus.windows.net 443 Azure Arc-aktiverade K8:ar Används för att på ett säkert sätt ansluta till Azure Arc-aktiverade Kubernetes-kluster utan att kräva att någon inkommande port aktiveras i brandväggen.
https://guestnotificationservice.azure.com 443 Azure Arc-aktiverade K8:ar Används för gästmeddelandeåtgärder.
sts.windows.net 443 Azure Arc-aktiverade K8:ar För klusteranslutning och anpassat platsbaserat scenario.
https://*.dp.prod.appliances.azure.com 443 Arc-resursbrygga Används för dataplansåtgärder för Resursbrygga (installation).
*.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
https://adhs.events.data.microsoft.com
https://v20.events.data.microsoft.com
443 Mått och hälsoövervakning Används för mått och övervakning av telemetritrafik.
pypi.org
*.pypi.org
files.pythonhosted.org
443 Az CLI Används för att ladda ned Az CLI- och Az CLI-tillägg.
aka.ms 443 Azure Stack HCI Krävs för Azure Stack HCI-relaterade nedladdningar.
raw.githubusercontent.com 443 GitHub Används för GitHub.
www.microsoft.com 80 Microsofts officiella webbplats. Microsofts officiella webbplats.

Nästa steg

Skapa logiska nätverk för Kubernetes-kluster på Azure Stack HCI 23H2