Přehled zón dostupnosti ve službě Azure Kubernetes Service (AKS)
Tento článek obsahuje přehled použití zón dostupnosti ve službě Azure Kubernetes Service (AKS) ke zvýšení dostupnosti vašich aplikací.
Cluster AKS distribuuje prostředky, jako jsou uzly a úložiště, napříč logickými oddíly základní infrastruktury Azure. Použití zón dostupnosti fyzicky odděluje uzly od jiných uzlů nasazených do různých zón dostupnosti. Clustery AKS nasazené s několika zónami dostupnosti nakonfigurovanými v rámci clusteru poskytují vyšší úroveň dostupnosti pro ochranu před selháním hardwaru nebo událostí plánované údržby.
Co jsou zóny dostupnosti?
Zóny dostupnosti pomáhají chránit aplikace a data před selháními datacentra. Zóny jsou jedinečná fyzická umístění v rámci oblasti Azure. Každá zóna zahrnuje jedno nebo více datacenter vybavených nezávislým napájením, chlazením a sítěmi. Kvůli zajištění odolnosti existuje vždy více než jedna zóna ve všech oblastech s povolenými zónami. Fyzické oddělení zón dostupnosti v rámci oblasti chrání aplikace a data před selháním datacenter.
Clustery AKS nasazené pomocí zón dostupnosti můžou distribuovat uzly napříč několika zónami v rámci jedné oblasti. Například cluster v oblasti USA – východ 2 může vytvářet uzly ve všech třech zónách dostupnosti v oblasti USA – východ 2. Tato distribuce prostředků clusteru AKS zlepšuje dostupnost clusteru, protože jsou odolné vůči selhání konkrétní zóny.
Pokud se jedna zóna stane nedostupnou, vaše aplikace budou dál běžet na clusterech nakonfigurovaných tak, aby se rozprostřely mezi více zón.
Další informace najdete v tématu Použití zón dostupnosti Azure.
Poznámka:
Při implementaci zón dostupnosti s automatickým škálováním clusteru doporučujeme pro každou zónu použít jeden fond uzlů. Parametr můžete nastavit --balance-similar-node-groups
tak, aby true
se zachovala vyvážená distribuce uzlů napříč zónami pro vaše úlohy během operací vertikálního navýšení kapacity. Pokud tento přístup není implementovaný, operace vertikálního snížení kapacity můžou narušit rovnováhu uzlů napříč zónami. Tato konfigurace nezaručuje, že podobné skupiny uzlů budou mít stejný počet uzlů:
- V současné době se vyrovnávání provádí pouze během operací vertikálního navýšení kapacity. Automatické škálování clusteru škáluje nedostatečně využité uzly bez ohledu na relativní velikosti skupin uzlů.
- Automatické škálování clusteru přidává pouze tolik uzlů, kolik je potřeba ke spuštění všech existujících podů. Některé skupiny můžou mít více uzlů než jiné, pokud mají naplánované více podů.
- Automatické škálování clusteru vyrovnává pouze mezi skupinami uzlů, které můžou podporovat stejnou sadu čekajících podů.
Disky zónově redundantního úložiště Azure (ZRS) můžete použít také k replikaci úložiště napříč třemi zónami dostupnosti v oblasti, kterou vyberete. Disk ZRS umožňuje zotavení ze selhání zóny dostupnosti bez ztráty dat. Další informace najdete v tématu ZRS pro spravované disky.
Omezení
Při vytváření clusteru AKS pomocí zón dostupnosti platí následující omezení:
- Během vytváření clusteru nebo fondu uzlů můžete definovat pouze zóny dostupnosti.
- Po vytvoření clusteru není možné aktualizovat existující cluster zóny dostupnosti tak, aby používal zóny dostupnosti.
- Vybraná velikost uzlu (skladová položka virtuálního počítače) musí být dostupná ve všech vybraných zónách dostupnosti.
- Clustery s povolenými zónami dostupnosti vyžadují pro distribuci napříč zónami službu Azure Standard Load Balancers. Tento typ nástroje pro vyrovnávání zatížení můžete definovat pouze v době vytvoření clusteru. Další informace a omezení standardního nástroje pro vyrovnávání zatížení najdete v tématu Omezení skladové položky Azure Load Balancer úrovně Standard.
Podpora zón dostupnosti disků Azure
Svazky, které používají disky Spravované LRS Azure, nejsou zónově redundantní prostředky a připojení mezi zónami se nepodporuje. Svazky musíte společně přidělit ve stejné zóně jako zadaný uzel, který je hostitelem cílového podu. Svazky, které používají disky Azure managed ZRS, jsou zónově redundantní prostředky. Tyto svazky můžete naplánovat na všech uzlech zóny a agenta mimo zónu. Následující příklad ukazuje, jak vytvořit třídu úložiště pomocí disku StandardSSD_ZRS :
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: managed-csi-zrs
provisioner: disk.csi.azure.com
parameters:
skuName: StandardSSD_ZRS # or Premium_ZRS
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true
Kubernetes verze 1.12 a vyšší vědí o zónách dostupnosti Azure. Objekt PersistentVolumeClaim odkazující na spravovaný disk Azure můžete nasadit v clusteru AKS s více zónami a Kubernetes se postará o naplánování jakéhokoli podu, který tento PVC deklaruje ve správné zóně dostupnosti.
Počínaje Kubernetes verze 1.29 platí, že když nasadíte clustery Azure Kubernetes Service (AKS) napříč několika zónami dostupnosti, AKS teď využívá zónově redundantní úložiště (ZRS) k vytváření spravovaných disků v rámci integrovaných tříd úložiště. ZRS zajišťuje synchronní replikaci spravovaných disků Azure napříč několika zónami dostupnosti Azure ve zvolené oblasti. Tato strategie redundance zvyšuje odolnost vašich aplikací a chrání vaše data před selháními datacentra.
Je ale důležité si uvědomit, že zónově redundantní úložiště (ZRS) má oproti místně redundantnímu úložišti (LRS) vyšší náklady. Pokud je optimalizace nákladů prioritou, můžete vytvořit novou třídu úložiště s parametrem nastaveným skuname
na LRS. Pak můžete použít novou třídu úložiště ve vaší trvalé deklaraci identity svazku (PVC).
Další kroky
- Vytvořte cluster AKS se zónami dostupnosti.
Azure Kubernetes Service