Sdílet prostřednictvím


Požadavky na plánování IP adres

Platí pro: Azure Local, verze 23H2

Plánování IP adres pro AKS povolené službou Azure Arc zahrnuje návrh sítě, která podporuje aplikace, fondy uzlů, sítě podů, komunikaci služeb a externí přístup. Tento článek vás provede některými klíčovými aspekty efektivního plánování IP adres a minimálním počtem IP adres potřebných k nasazení AKS v produkčním prostředí. Než si přečtete tento článek, přečtěte si koncepty a požadavky na sítě AKS.

Jednoduché plánování IP adres pro clustery a aplikace Kubernetes

V následujícím scénáři si rezervujete IP adresy z jedné sítě pro clustery a služby Kubernetes. Tento příklad je nejjednodušším a nejjednodušším scénářem přiřazení IP adres.

Požadavek na IP adresu Minimální počet IP adres Jak a kde tuto rezervaci provést
IP adresy virtuálních počítačů AKS Arc Vyhraďte si jednu IP adresu pro každý pracovní uzel v clusteru Kubernetes. Pokud například chcete vytvořit fondy 3 uzlů se 3 uzly v každém fondu uzlů, potřebujete ve fondu IP adres 9 IP adres. Vyhraďte SI IP adresy prostřednictvím fondů IP adres v logické síti virtuálního počítače Arc.
IP adresy upgradu verze AKS Arc K8s Vzhledem k tomu, že AKS Arc provádí postupné upgrady, vyhraďte jednu IP adresu pro každý cluster AKS Arc pro operace upgradu verzí Kubernetes. Vyhraďte SI IP adresy prostřednictvím fondů IP adres v logické síti virtuálního počítače Arc.
IP adresa řídicí roviny Vyhraďte si jednu IP adresu pro každý cluster Kubernetes ve vašem prostředí. Pokud například chcete vytvořit celkem 5 clusterů, vyhraďte si 5 IP adres, jednu pro každý cluster Kubernetes. Vyhraďte SI IP adresy prostřednictvím fondů IP adres v logické síti virtuálního počítače Arc.
IP adresy nástroje pro vyrovnávání zatížení Počet rezervovaných IP adres závisí na vašem modelu nasazení aplikace. Jako výchozí bod si můžete rezervovat jednu IP adresu pro každou službu Kubernetes. Vyhraďte SI IP adresy ve stejné podsíti jako logická síť virtuálního počítače Arc, ale mimo fond IP adres.

Příklad rezervace IP adres pro clustery a aplikace Kubernetes

Jane je správce IT, který právě začíná službou AKS povolenou službou Azure Arc. Jane chce nasadit dva clustery Kubernetes: cluster Kubernetes A a cluster Kubernetes B v místním clusteru Azure. Jane chce také spustit hlasovací aplikaci nad clusterem A. Tato aplikace má tři instance front-endového uživatelského rozhraní spuštěného ve dvou clusterech a jednu instanci back-endové databáze. Všechny clustery a služby AKS běží v jedné síti s jednou podsítí.

  • Cluster Kubernetes A má 3 uzly řídicí roviny a 5 pracovních uzlů.
  • Cluster Kubernetes B má 1 uzel řídicí roviny a 3 pracovní uzly.
  • 3 instance front-endového uživatelského rozhraní (port 443).
  • 1 instance back-endové databáze (port 80).

Na základě předchozí tabulky si Jane musí v podsíti Jane rezervovat celkem 19 IP adres:

  • 8 IP adres pro virtuální počítače uzlů AKS Arc v clusteru A (jedna IP adresa na virtuální počítač uzlu K8s).
  • 4 IP adresy pro virtuální počítače uzlů AKS Arc v clusteru B (jedna IP adresa na virtuální počítač uzlu K8s).
  • 2 IP adresy pro spuštění operace upgradu služby AKS Arc (jedna IP adresa na cluster AKS Arc).
  • 2 IP adresy řídicí roviny AKS Arc (jedna IP adresa na cluster AKS Arc)
  • 3 IP adresy pro službu Kubernetes (jedna IP adresa na instanci front-endového uživatelského rozhraní, protože všechny používají stejný port. Back-endová databáze může používat libovolnou ze tří IP adres, pokud používá jiný port).

Pokračujeme v tomto příkladu a přidáte ho do následující tabulky:

Parametr Počet IP adres Jak a kde tuto rezervaci provést
Virtuální počítače AKS Arc, upgrade verzí K8s a IP rovina řízení Rezervace 16 IP adres Tuto rezervaci proveďte prostřednictvím fondů IP adres v místní logické síti Azure.
IP adresy nástroje pro vyrovnávání zatížení 3 IP adresa pro služby Kubernetes, pro hlasovací aplikaci Jane. Tyto IP adresy se používají při instalaci nástroje pro vyrovnávání zatížení v clusteru A. Můžete použít rozšíření MetalLB Arc nebo použít vlastní nástroj pro vyrovnávání zatížení třetích stran. Ujistěte se, že je tato IP adresa ve stejné podsíti jako logická síť Arc, ale mimo fond IP definovaný v logické síti virtuálních počítačů Arc.

Ukázkové příkazy rozhraní příkazového řádku pro rezervaci IP adres pro clustery a aplikace Kubernetes

Tato část popisuje sadu příkazů, které Jane spouští pro svůj scénář. Nejprve vytvořte logickou síť s fondem IP adres, který má aspoň 16 IP adres. Vytvořili jsme fond IP adres s 20 IP adresami, abychom mohli škálovat v den N. Podrobné informace o možnostech parametrů v logických sítích najdete v tématu az stack-hci-vm network lnet create:

$ipPoolStart = "10.220.32.18"
$ipPoolEnd = "10.220.32.37"
az stack-hci-vm network lnet create --subscription $subscription --resource-group $resource_group --custom-location $customLocationID --name $lnetName --vm-switch-name $vmSwitchName --ip-allocation-method "Static" --address-prefixes $addressPrefixes --gateway $gateway --dns-servers $dnsServers --ip-pool-start $ipPoolStart --ip-pool-end $ipPoolEnd

Dále vytvořte cluster AKS Arc s předchozí logickou sítí:

az aksarc create -n $aksclustername -g $resource_group --custom-location $customlocationID --vnet-ids $lnetName --aad-admin-group-object-ids $aadgroupID --generate-ssh-keys

Teď můžete povolit nástroj pro vyrovnávání zatížení Nástroje pro vyrovnávání zatížení nástroje MetalLB s 3 IP adresami ve stejné podsíti jako logická síť virtuálního počítače Arc. Pokud vaše aplikace potřebuje zvýšit, můžete později přidat další fondy IP adres. Podrobné požadavky najdete v přehledu rozšíření MetalLB Arc.

az k8s-runtime load-balancer create --load-balancer-name $lbName --resource-uri subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.Kubernetes/connectedClusters/metallb-demo --addresses 10.220.32.47-10.220.32.49 --advertise-mode ARP

Důležité informace o LNET pro clustery AKS a virtuální počítače Arc

Logické sítě v Azure Local používají clustery AKS i virtuální počítače Arc. Logické sítě můžete nakonfigurovat jedním z následujících 2 způsobů:

  • Sdílejte logickou síť mezi virtuálními počítači AKS a Arc.
  • Definujte samostatné logické sítě pro clustery AKS a virtuální počítače Arc.

Sdílení logické sítě mezi virtuálními počítači AKS a Arc v Azure Local nabízí výhodu zjednodušené komunikace, úspor nákladů a zjednodušené správy sítě. Tento přístup ale také přináší potenciální problémy, jako jsou kolize prostředků, rizika zabezpečení a složitost řešení potíží.

Kritéria Sdílení logické sítě Definování samostatných logických sítí
Složitost konfigurace Jednodušší konfigurace s jednou sítí, což snižuje složitost nastavení. Složitější nastavení, protože potřebujete nakonfigurovat více logických sítí pro virtuální počítače a clustery AKS.
Škálovatelnost Potenciální omezení škálovatelnosti, protože virtuální počítače Arc i clustery AKS sdílejí síťové prostředky. Škálovatelné, protože síťové prostředky jsou oddělené a můžou se škálovat nezávisle.
Správa zásad sítě Jednodušší správa pomocí jedné sady zásad sítě, ale obtížnější izolovat úlohy. Jednodušší izolace úloh, protože pro každou logickou síť je možné použít samostatné zásady.
Aspekty zabezpečení Zvýšené riziko ohrožení zabezpečení křížové komunikace, pokud není správně segmentované. Lepší zabezpečení, protože jednotlivé sítě je možné segmentovat a izolovat přesněji.
Dopad selhání sítě Selhání ve sdílené síti může mít vliv na virtuální počítače AKS i Arc současně. Selhání v jedné síti ovlivňuje pouze úlohy v této síti, což snižuje celkové riziko.

Přidělování rozsahu IP adres pro CIDR podu a CIDR služby

Tato část popisuje rozsahy IP adres používané Kubernetes pro komunikaci podů a služeb v rámci clusteru. Tyto rozsahy IP adres se definují během procesu vytváření clusteru AKS a slouží k přiřazení jedinečných IP adres podům a službám v rámci clusteru.

CIDR v síti podů

CIDR sítě podů je rozsah IP adres, které Kubernetes používá k přiřazení jedinečných IP adres jednotlivým podům spuštěným v clusteru Kubernetes. Každý pod získá svou vlastní IP adresu v rámci tohoto rozsahu, což umožňuje podům komunikovat mezi sebou a se službami v clusteru. V AKS se IP adresy podů přiřazují prostřednictvím Calico CNI v režimu VXLAN. Calico VXLAN pomáhá vytvářet překryvné sítě, kde jsou virtualizované a tunelované IP adresy podů (ze sítě CIDR podů) a tunelované přes fyzickou síť. V tomto režimu je každému podu přiřazena IP adresa ze sítě CIDR podů, ale tato IP adresa není přímo směrovatelná ve fyzické síti. Místo toho je zapouzdřen v síťových paketech a odesílá se přes základní fyzickou síť, aby se dostal do cílového podu na jiném uzlu.

AKS poskytuje výchozí hodnotu 10.244.0.0/16 pro síť podů CIDR. AKS podporuje přizpůsobení ciDR sítě podů. Při vytváření clusteru --pod-cidr AKS můžete nastavit vlastní hodnotu pomocí parametru. Ujistěte se, že rozsah IP adres CIDR je dostatečně velký, aby vyhovoval maximálnímu počtu podů na uzel a napříč clusterem Kubernetes.

CIDR sítě služby

CiDR sítě služby je rozsah IP adres vyhrazených pro služby Kubernetes, jako jsou LoadBalancers, ClusterIP a NodePort v rámci clusteru. Kubernetes podporuje následující typy služeb:

  • ClusterIP: Výchozí typ služby, který zpřístupňuje službu v rámci clusteru. IP adresa přiřazená ze sítě služby CIDR je přístupná pouze v rámci clusteru Kubernetes.
  • NodePort: Zveřejňuje službu na konkrétním portu na IP adrese každého uzlu. ClusterIP se stále používá interně, ale externí přístup je prostřednictvím IP adres uzlu a konkrétního portu.
  • LoadBalancer: Tento typ vytvoří nástroj pro vyrovnávání zatížení spravovaný poskytovatelem cloudu a zveřejní službu externě. Poskytovatel cloudu obvykle spravuje externí přiřazování IP adres, zatímco interní clusterIP zůstává v síti služby CIDR.

AKS poskytuje výchozí hodnotu 10.96.0.0/12 pro síť služby CIDR. AKS v současné chvíli nepodporuje vlastní nastavení pro síť služeb CIDR.

Další kroky

Vytvoření logických sítí pro clustery Kubernetes v místním Prostředí Azure verze 23H2