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" . |
|
--dns-servers |
Utrymmesavgränsad lista över DNS-serverns IP-adresser. Användning: --dns-servers 10.220.32.16 10.220.32.17 . |
|
--gateway |
Gateway. Gateway-IP-adressen måste ligga inom adressprefixets omfång. Användning: --gateway 10.220.32.16 . |
|
--ip-allocation-method |
Ip-adressallokeringsmetod. Värden som stöds är "Static". Användning: --ip-allocation-method "Static" . |
|
--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" . |
|
--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" . |
|
--vm-switch-name |
Namnet på växeln för den virtuella datorn. Användning: --vm-switch-name "vm-switch-01" . |
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:
- Distribuera MetalLB-lastbalanserare med Azure Arc-tillägget.
- Ta med din egen lastbalanserare från tredje part.
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