Nätverksbegrepp för att distribuera AKS-noder

Gäller för: AKS på Azure Stack HCI 22H2, AKS på Windows Server

Du kan välja mellan två ip-adresstilldelningsmodeller för din nätverksarkitektur för AKS som aktiveras av Azure Arc. AKS stöder flera distributionsalternativ för Azure Kubernetes Service (AKS).

  • Statiska IP-nätverk: det virtuella nätverket allokerar statiska IP-adresser till Kubernetes-klustrets API-server, Kubernetes-noder, underliggande virtuella datorer, lastbalanserare och alla Kubernetes-tjänster som körs ovanpå klustret.
  • DHCP-nätverk: det virtuella nätverket allokerar dynamiska IP-adresser till Kubernetes-noderna, underliggande virtuella datorer och lastbalanserare med hjälp av en DHCP-server. Kubernetes-klustrets API-server och alla Kubernetes-tjänster som du kör ovanpå klustret allokeras fortfarande statiska IP-adresser.

Anteckning

Arkitekturen för virtuella nätverk som definieras här för AKS Arc kan skilja sig från den underliggande fysiska nätverksarkitekturen i ett datacenter.

Virtuell IP-pool

En virtuell IP-pool (VIP) är en uppsättning IP-adresser som är obligatoriska för alla distributioner i AKS Arc. VIP-poolen är ett intervall med reserverade IP-adresser som används för att allokera IP-adresser till Kubernetes-klustrets API-server. Det garanterar att dina program på Kubernetes-tjänster alltid kan nås. Tänk på att oavsett vilken modell för virtuellt nätverk och vilken adresstilldelningsmodell du väljer måste du ange en VIP-pool för din AKS-värddistribution.

Antalet IP-adresser i VIP-poolen beror på antalet arbetsbelastningskluster och Kubernetes-tjänster som planeras för distributionen.

Beroende på din nätverksmodell skiljer sig VIP-pooldefinitionen åt på följande sätt:

  • Statisk IP: Om du använder statisk IP kontrollerar du att dina virtuella IP-adresser kommer från samma undernät.
  • DHCP: Om nätverket har konfigurerats med DHCP kan du kontakta nätverksadministratören för att utesluta IP-intervallet för VIP-poolen från DHCP-omfånget som används för AKS i Azure Stack HCI-distributionen.

IP-pool för virtuella Kubernetes-noder

Kubernetes-noder distribueras som specialiserade virtuella datorer i AKS Arc. AKS allokerar IP-adresser till dessa virtuella datorer för att möjliggöra kommunikation mellan Kubernetes-noder.

  • Statisk IP: du måste ange ett IP-poolintervall för en virtuell Kubernetes-noddator. Antalet IP-adresser i det här intervallet beror på det totala antalet Kubernetes-noder som du planerar att använda för distribution i AKS-värden och Kubernetes-arbetsbelastningsklustren. Tänk på att uppdateringar använder en till tre ytterligare IP-adresser under uppdateringen.
  • DHCP: du behöver inte ange en virtuell Kubernetes-nodpool eftersom IP-adresser till Kubernetes-noderna allokeras dynamiskt av DHCP-servern i nätverket.

Den här nätverksmodellen skapar ett virtuellt nätverk som allokerar IP-adresser från en statiskt definierad adresspool till alla objekt i distributionen. En extra fördel med att använda statiska IP-nätverk är att långlivade distributioner och programarbetsbelastningar garanterat alltid kan nås.

Ange följande parametrar när du definierar ett virtuellt nätverk med statiska IP-konfigurationer:

Viktigt

Den här versionen av AKS tillåter inte några ändringar i nätverkskonfigurationen när AKS-värden eller arbetsbelastningsklustret har distribuerats. Om du vill ändra nätverksinställningarna måste du börja om genom att ta bort arbetsbelastningskluster och avinstallera AKS.

  • Namn: Namnet på ditt virtuella nätverk.

  • Adressprefix: IP-adressprefixet som ska användas för ditt undernät.

  • Gateway: IP-adressen för standardgatewayen för undernätet.

  • DNS-server: En matris med IP-adresser som pekar på de DNS-servrar som ska användas för undernätet. Minst en och högst tre servrar kan tillhandahållas.

  • Vm-pool för Kubernetes-nod: Ett kontinuerligt intervall med IP-adresser som ska användas för dina virtuella Kubernetes-noddatorer.

  • Virtuell IP-pool: Ett kontinuerligt intervall med IP-adresser som ska användas för kubernetes-klustrets API-server och Kubernetes-tjänster.

    Anteckning

    VIP-poolen måste ingå i samma undernät som kubernetes-nodens VM-pool.

  • vLAN-ID: VLAN-ID för det virtuella nätverket. Om det utelämnas är det virtuella nätverket inte taggat.

Virtuellt nätverk med DHCP-nätverk

Den här nätverksmodellen skapar ett virtuellt nätverk som allokerar IP-adresser med DHCP till alla objekt i distributionen.

Du måste ange följande parametrar när du definierar ett virtuellt nätverk med statiska IP-konfigurationer:

Viktigt

I den här versionen av AKS går det inte att ändra nätverkskonfigurationen när AKS-värden eller arbetsbelastningsklustret har distribuerats. Det enda sättet att ändra nätverksinställningarna är att börja om från början genom att ta bort arbetsbelastningskluster och avinstallera AKS.

  • Namn: Namnet på ditt virtuella nätverk.

  • Virtuell IP-pool: Det kontinuerliga intervallet med IP-adresser som ska användas för kubernetes-klustrets API-server och Kubernetes-tjänster.

    Anteckning

    VIP-pooladresserna måste finnas i samma undernät som DHCP-omfånget och måste undantas från DHCP-omfånget för att undvika adresskonflikter.

  • vLAN-ID: VLAN-ID för det virtuella nätverket. Om det utelämnas är det virtuella nätverket inte taggat.

Microsofts lokala molntjänst

Microsoft On-premises Cloud (MOC) är den hanteringsstack som gör att de virtuella datorerna på Azure Stack HCI och Windows Server-baserade SDDC kan hanteras i molnet. MOC består av:

  • En enda instans av en tjänst med hög tillgänglighet cloud agent som distribueras i klustret. Den här agenten körs på en nod i Azure Stack HCI- eller Windows Server-klustret och är konfigurerad för att redundansväxla till en annan nod.
  • En node agent som körs på varje fysisk Azure Stack HCI-nod.

Om du vill aktivera kommunikation med MOC måste du ange ip-adressens CIDR som ska användas för tjänsten. -cloudserviceCIDR är en parameter i Set-AksHciConfig kommandot som används för att tilldela IP-adressen till molnagenttjänsten och aktivera hög tillgänglighet för molnagenttjänsten.

Valet av IP-adress för MOC-tjänsten beror på den underliggande nätverksmodellen som används av klusterdistributionen på Azure Stack HCI eller Windows Server.

Anteckning

IP-adressallokeringen för MOC-tjänsten är oberoende av din modell för virtuella Kubernetes-nätverk. IP-adressallokeringen är beroende av det underliggande fysiska nätverket och de IP-adresser som konfigurerats för Azure Stack HCI- eller Windows Server-klusternoderna i ditt datacenter.

  • Azure Stack HCI- och Windows Server-klusternoder med ett DHCP-baserat IP-adressallokeringsläge: Om dina Azure Stack HCI-noder tilldelas en IP-adress från en DHCP-server som finns i det fysiska nätverket behöver du inte uttryckligen ange en IP-adress till MOC-tjänsten eftersom MOC-tjänsten även tar emot en IP-adress från DHCP-servern.

  • Azure Stack HCI- och Windows Server-klusternoder med en statisk IP-allokeringsmodell: Om dina klusternoder tilldelas statiska IP-adresser måste du uttryckligen ange en IP-adress för MOC-molntjänsten. IP-adressen för MOC-tjänsten måste finnas i samma undernät som IP-adresserna för Azure Stack HCI- och Windows Server-klusternoder. Om du uttryckligen vill tilldela en IP-adress för MOC-tjänsten använder du parametern -cloudserviceCIDRSet-AksHciConfig i kommandot . Kontrollera att du anger en IP-adress i CIDR-format, till exempel: "10.11.23.45/16".

Jämföra nätverksmodeller

Både DHCP och statisk IP ger nätverksanslutning på din AKS på Azure Stack HCI- och Windows Server-distribution. Det finns dock fördelar och nackdelar med var och en. På hög nivå gäller följande överväganden:

DHCP – Garanterar inte långlivade IP-adresser för vissa resurstyper i en AKS-distribution. – Stöder expansion av reserverade DHCP IP-adresser om distributionen blir större än du ursprungligen förväntade dig.

Statisk IP – garanterar långlivade IP-adresser för alla resurser i en AKS-distribution. – Eftersom automatisk expansion av Kubernetes-nodens IP-pool inte stöds kanske du inte kan skapa nya kluster om du har förbrukat Kubernetes-nodens IP-pool.

I följande tabell jämförs IP-adressallokering för resurser mellan statiska IP- och DHCP-nätverksmodeller:

Funktion Statisk IP-adress DHCP
API-server för Kubernetes-kluster Tilldelas statiskt med hjälp av VIP-pool. Tilldelas statiskt med hjälp av VIP-pool.
Kubernetes-noder (på virtuella datorer) Tilldelas med Kubernetes-nodens IP-pool. Tilldelas dynamiskt.
Kubernetes-tjänster Tilldelas statiskt med hjälp av VIP-pool. Tilldelas statiskt med hjälp av VIP-pool.
VIRTUELL DATOR med HAProxy-lastbalanserare Tilldelas med Kubernetes-nodens IP-pool. Tilldelas dynamiskt.
Microsofts lokala molntjänst Beror på den fysiska nätverkskonfigurationen för Azure Stack HCI- och Windows Server-klusternoder. Beror på den fysiska nätverkskonfigurationen för Azure Stack HCI- och Windows Server-klusternoder.
VIP-pool Obligatorisk Obligatorisk
IP-pool för virtuella Kubernetes-noder Obligatorisk Stöds inte

Minsta IP-adressreservationer för en AKS-distribution

Oavsett distributionsmodell förblir antalet reserverade IP-adresser detsamma. I det här avsnittet beskrivs antalet IP-adresser som du behöver reservera baserat på din AKS Arc-distributionsmodell.

Minsta IP-adressreservation

Du bör minst reservera följande antal IP-adresser för distributionen:

Klustertyp Kontrollplansnod Arbetsnod För uppdateringsåtgärder Lastbalanserare
AKS-värd En IP-adress NA Två IP-adresser NA
Arbetsbelastningskluster En IP-adress per nod En IP-adress per nod 5 IP-adresser En IP-adress

Dessutom bör du reservera följande antal IP-adresser för din VIP-pool:

Resurstyp Antal IP-adresser
Kluster-API-server 1 per kluster
Kubernetes-tjänster 1 per tjänst
Programtjänster 1 per planerad tjänst

Som du ser varierar antalet nödvändiga IP-adresser beroende på arkitekturen för AKS-distributionen och antalet tjänster som du kör i Kubernetes-klustret. Vi rekommenderar att du reserverar minst 256 IP-adresser (/24 undernät) för distributionen.

Gå igenom en exempeldistribution

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 en röstningsapp ovanpå sitt kluster. Det här programmet har tre instanser av klientdelens användargränssnitt som körs i de två klustren och en instans av serverdelsdatabasen.

  • 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:

  • 3 IP-adresser för AKS-värden (en IP-adress för kontrollplansnoden och två IP-adresser för att köra uppdateringsåtgärder).
  • 3 IP-adresser för kontrollplansnoderna i kluster A (en IP per kontrollplansnod).
  • 5 IP-adresser för arbetsnoderna i kluster A (en IP per arbetsnod).
  • Dessutom 6 IP-adresser för kluster A (fem IP-adresser för att köra uppdateringsåtgärder och 1 IP-adress för lastbalanserare).
  • 1 IP-adresser för kontrollplansnoderna i kluster B (en IP per kontrollplansnod).
  • 3 IP-adresser för arbetsnoderna i kluster B (en IP per arbetsnod).
  • Dessutom 6 IP-adresser för kluster B (fem IP-adresser för att köra uppdateringsåtgärder och 1 IP-adress för lastbalanserare).
  • 2 IP-adresser för Kubernetes-klustrets API-servrar (en IP per Kubernetes-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).

Som tidigare beskrivits kräver Jane totalt 32 IP-adresser för att distribuera klustret. Jane bör därför reservera ett /26-undernät för sitt virtuella nätverk.

Dela upp reserverade IP-adresser baserat på en statisk IP-nätverksmodell

Även om det totala antalet reserverade IP-adresser förblir detsamma, avgör distributionsmodellen hur dessa IP-adresser delas upp mellan IP-grupper. Den statiska IP-nätverksmodellen har två IP-pooler:

  • IP-pool för kubernetes-nod-VM: för virtuella Kubernetes-noddatorer och den virtuella datorn för lastbalanseraren. Den här IP-poolen innehåller även den IP-adress som krävs för att köra uppdateringsåtgärder.
  • Virtuell IP-pool: för Kubernetes API-servern och Kubernetes-tjänsterna.

I det här exemplet måste Jane ytterligare dela upp dessa IP-adresser mellan VIP-pooler och Kubernetes-nod-IP-pooler:

  • 5 (två för Kubernetes-klustrets API-server och tre för Kubernetes-tjänster) av de 32 IP-adresserna för hennes VIP-pool.
  • 27 (alla IP-adresser för hennes Kubernetes-noder och underliggande virtuella datorer, lastbalanserarens virtuella datorer och uppdateringsåtgärder) för hennes Kubernetes-nod-IP-pool.

Dela upp reserverade IP-adresser baserat på en DHCP-nätverksmodell

Även om det totala antalet reserverade IP-adresser förblir detsamma avgör distributionsmodellen hur dessa IP-adresser delas upp mellan IP-grupper. Som vi gick igenom i föregående avsnitt har DHCP-nätverksmodellen ett IP-omfång:

  • Virtuell IP-pool: för Kubernetes API-servern och Kubernetes-tjänsterna

Arbeta med föregående exempel:

  • Jane måste reservera totalt 32 IP-adresser eller ett /26-undernät på sin DHCP-server.
  • Hon måste undanta 5 (två för Kubernetes-klustrets API-server och tre för Kubernetes-tjänster) från DHCP-omfånget på 32 IP-adresser för hennes VIP-pool.

Ingresskontrollanter

Under distributionen av ett målkluster skapas en HAProxy-baserad lastbalanseringsresurs. Lastbalanseraren är konfigurerad för att distribuera trafik till poddarna i din tjänst på en viss port. Lastbalanseraren fungerar bara på lager 4, vilket indikerar att tjänsten inte känner till det faktiska programmet. Det kan t.ex. inte göra några ytterligare routningsöverväganden.

Ingresskontrollanter fungerar på nivå 7 och kan använda mer intelligenta regler för att distribuera programtrafik. En vanlig användning av en ingresskontrollant är att dirigera HTTP-trafik till olika program baserat på den inkommande URL:en.

Diagram som visar inkommande trafikflöde i ett AKS-kluster på Azure Stack HCI.

Nästa steg

Den här artikeln beskriver några av nätverksbegreppen för att distribuera AKS-noder på Azure Stack HCI. Mer information finns i följande artiklar: