Sdílet prostřednictvím


Použití profilu automatického škálování ke konfiguraci automatického škálování clusteru v AKS povoleném službou Arc

Platí pro: AKS v Azure Stack HCI 22H2, AKS na Windows Serveru

Pomocí parametrů v objektu profilu automatického škálování můžete definovat události škálování v AKS povolené službou Arc. Profil automatického škálování clusteru má vliv na všechny fondy uzlů, které používají automatické škálování clusteru; Nemůžete nastavit profil automatického škálování na fond uzlů. Tento článek vysvětluje, jak automatické škálování funguje, popisuje výchozí hodnoty profilu automatického škálování a popisuje, jak nakonfigurovat a použít definici profilu.

Použití profilů

Profily automatického škálování clusteru mají následující atributy:

  • Profily automatického škálování platí pro všechny fondy uzlů v clusteru.
  • Profily jsou objekty na úrovni globálního nasazení.
  • V AKS Arc je k dispozici více profilů.
  • K danému clusteru je přiřazen pouze jeden profil. Profil se používá pro všechny fondy uzlů v clusteru.
  • Změny profilu se použijí u všech fondů uzlů, které mají povolenou funkci automatického škálování.

Nastavení profilu

Výchozí profil se skládá z výchozích hodnot níže. Můžete aktualizovat následující nastavení.

Nastavení Popis Default value
min-node-count Minimální počet uzlů, ke kterému je tento profil přiřazený, může vertikálně snížit kapacitu fondu uzlů. 0
max-node-count Maximální počet uzlů, ke kterému je přiřazený fond uzlů, se může vertikálně navýšit kapacitu. 0
scan-interval Jak často se cluster znovu vyhodnocuje pro vertikální navýšení nebo snížení kapacity. 10 sekund
scale-down-delay-after-add Jak dlouho po vertikálním navýšení kapacity se hodnocení obnoví. 10 minut
scale-down-delay-after-delete Jak dlouho po odstranění uzlu se obnoví vyhodnocení vertikálního snížení kapacity. scan-interval
scale-down-delay-after-failure Jak dlouho po selhání vertikálního snížení kapacity se obnoví vyhodnocení vertikálního snížení kapacity. 3 minuty
scale-down-unneeded-time Jak dlouho by měl být uzel nepotřebný, než bude mít nárok na vertikální snížení kapacity. 10 minut
scale-down-unready-time Jak dlouho by měl být nepřečtený uzel nepotřebný, než bude mít nárok na vertikální snížení kapacity. 20 minut
scale-down-utilization-threshold Úroveň využití uzlu definovaná jako součet požadovaných prostředků vydělených kapacitou, pod kterou lze uzel považovat za vertikální snížení kapacity. 0.5
max-graceful-termination-sec Maximální počet sekund, po které automatické škálování clusteru čeká na ukončení podu při pokusu o vertikální snížení kapacity uzlu 600 s
balance-similar-node-groups Detekuje podobné fondy uzlů a vyrovnává počet uzlů mezi nimi. false (nepravda)
expander Typ rozšíření fondu uzlů, který se má použít při vertikálním navýšení kapacity. Možné hodnoty: most-pods, random, least-waste, priority. random
skip-nodes-with-local-storage Pokud je pravda, automatické škálování clusteru nikdy neodstraní uzly s pody s místním úložištěm, například EmptyDir nebo HostPath. true
skip-nodes-with-system-pods Pokud je pravda, automatické škálování clusteru nikdy neodstraní uzly s pody ( kube-system s výjimkou daemonSet nebo zrcadlových podů). true
max-empty-bulk-delete Maximální počet prázdných uzlů, které lze odstranit současně. 10
new-pod-scale-up-delay Ve scénářích, jako je nárazové nebo dávkové škálování, ve kterých nechcete, aby certifikační autorita fungovala před tím, než plánovač Kubernetes může naplánovat všechny pody, můžete certifikační autoritě říct, aby ignorovala neplánované pody, než bude mít určitý věk. 0 sekund
max-total-unready-percentage Maximální procento nepřečtených uzlů v clusteru Po překročení tohoto procenta certifikační autorita zastaví operace. 45 %
max-node-provision-time Maximální doba čekání automatického škálování na zřízení uzlu 15 minut

Poznámky ke konfiguraci automatického škálování

Nastavení v profilu automatického škálování clusteru můžete změnit pomocí rutiny PowerShellu Set-AksHciAutoScalerConfig .

Automatické škálování clusteru provádí rozhodnutí o škálování na základě minimálního a maximálního počtu nastaveného v každém fondu uzlů, ale po aktualizaci minimálního nebo maximálního počtu je nevynucuje. Například nastavení minimálního počtu 5, pokud je aktuální počet uzlů 3, nebude okamžitě škálovat fond až na 5.

Pokud má minimální počet ve fondu uzlů hodnotu vyšší než aktuální počet uzlů, nové minimální nebo maximální nastavení se respektuje, pokud existuje dostatek nenaplánovatelných podů, které vyžadují dva nové další uzly a aktivují událost automatického škálování. Po události škálování se respektují nová omezení počtu.

Můžete také nakonfigurovat podrobnější podrobnosti automatického škálování clusteru změnou výchozích hodnot v profilu automatického škálování v rámci celého clusteru. Například událost vertikálního snížení kapacity probíhá po dobu 10 minut, kdy se uzly nevyužívají. Pokud máte úlohy, které běží každých 15 minut, můžete změnit profil automatického škálování tak, aby po 15 nebo 20 minutách vertikálně snížil kapacitu nevyužitých uzlů. Pokud povolíte automatické škálování clusteru, použije se výchozí profil, pokud nezadáte jiná nastavení.

Uložení a načtení profilu automatického škálování

Profil automatického škálování můžete uložit a uložit do definice profilu jako soubor YAML. Soubor YAML můžete ručně upravit z textového editoru a můžete načíst uložené definice.

Uložení definice profilu

Kopii profilu uložíte jako soubor YAML pomocí kvactl. Po definování profilu spusťte následující příkazy:

kvactl.exe autoscalerprofile get --name default --kubeconfig (Get-AksHciConfig).Kva.kubeconfig --outputformat=yaml > def.yaml

Úprava definice profilu

Definici profilu můžete upravit v souboru YAML. Def.yaml můžete například otevřít v poznámkovém bloku, editoru Visual Studio Code nebo v jiných textových editorech.

Načtení definice profilu

Definici profilu můžete načíst pomocí kvactl uloženého souboru YAML. Spusťte následující příkaz:

kvactl.exe autoscalerprofile create --profileconfig .\def-new.yaml --kubeconfig (Get-AksHciConfig).Kva.kubeconfig

Další kroky