Automatické škálování a App Service Environment v1

Důležité

Tento článek se týká služby App Service Environment v1. Služba App Service Environment v1 bude vyřazena 31. srpna 2024. Existuje nová verze služby App Service Environment, která se snadněji používá a běží na výkonnější infrastruktuře. Další informace o nové verzi najdete v úvodu do služby App Service Environment. Pokud aktuálně používáte App Service Environment v1, postupujte podle kroků v tomto článku a proveďte migraci na novou verzi.

Od 29. ledna 2024 už nemůžete vytvářet nové prostředky služby App Service Environment verze 1 pomocí žádné z dostupných metod, včetně šablon ARM/Bicep, webu Azure Portal, Azure CLI nebo rozhraní REST API. Před 31. srpnem 2024 musíte migrovat do služby App Service Environment v3 , abyste zabránili odstranění prostředků a ztrátě dat.

prostředí služby Aplikace Azure podporují automatické škálování. Jednotlivé fondy pracovních procesů můžete automaticky škálovat na základě metrik nebo plánu.

Autoscale options for a worker pool.

Automatické škálování optimalizuje využití prostředků tím, že automaticky zvětší a zmenší prostředí App Service tak, aby vyhovovalo vašemu rozpočtu a profilu zatížení.

Konfigurace automatického škálování fondu pracovních procesů

K funkci automatického škálování se dostanete z karty Nastavení fondu pracovních procesů.

Settings tab of the worker pool.

Odsud by mělo být rozhraní poměrně známé, protože je to stejné prostředí, jaké vidíte při škálování plánu služby App Service.

Manual scale settings.

Můžete také nakonfigurovat profil automatického škálování.

Autoscale settings.

Profily automatického škálování jsou užitečné k nastavení omezení škálování. Díky tomu můžete mít konzistentní výkon nastavením hodnoty měřítka dolní hranice (1) a předvídatelného limitu útraty nastavením horní hranice (2).

Scale settings in profile.

Po definování profilu můžete přidat pravidla automatického škálování pro vertikální navýšení nebo snížení počtu instancí ve fondu pracovních procesů v rámci hranic definovaných profilem. Pravidla automatického škálování jsou založená na metrikách.

Scale rule.

K definování pravidel automatického škálování je možné použít jakýkoli fond pracovních procesů nebo front-endové metriky. Tyto metriky jsou stejné metriky, které můžete monitorovat v grafech oken prostředků nebo nastavit upozornění.

Příklad automatického škálování

Automatické škálování prostředí služby App Service můžete nejlépe ilustrovat procházením scénáře.

Tento článek vysvětluje všechny nezbytné aspekty při nastavování automatického škálování. Tento článek vás provede interakcemi, které přicházejí do hry, když zohládáte automatické škálování prostředí App Service, která jsou hostovaná ve službě App Service Environment.

Úvod ke scénáři

Frank je správce systému pro podnik, který migroval část úloh, které spravuje do služby App Service Environment.

Služba App Service Environment je nakonfigurovaná tak, aby se ručně škálovala následujícím způsobem:

  • Front-endy: 3
  • Fond pracovních procesů 1: 10
  • Fond pracovních procesů 2: 5
  • Fond pracovních procesů 3: 5

Fond pracovních procesů 1 se používá pro produkční úlohy, zatímco fond pracovních procesů 2 a fond pracovních procesů 3 se používají pro úlohy kontroly kvality (QA) a vývojové úlohy.

Plány služby App Service pro kontrolu kvality a vývoj jsou nakonfigurované na ruční škálování. Plán produkční služby App Service je nastavený na automatické škálování, aby se vyřešily varianty zatížení a provozu.

Frank je velmi obeznámen s aplikací. Vědí, že špička pro zatížení je mezi 9:00 a 16:00, protože se jedná o obchodní aplikaci, kterou zaměstnanci používají, když jsou v kanceláři. Využití se po uplynutí této doby uživatelům sníží. Mimo špičku je stále nějaké zatížení, protože uživatelé můžou k aplikaci přistupovat vzdáleně pomocí svých mobilních zařízení nebo domácích počítačů. Plán produkční služby App Service je už nakonfigurovaný tak, aby automaticky škáloval na základě využití procesoru s následujícími pravidly:

Specific settings for LOB app.

Profil automatického škálování – Pracovní dny – Plán služby App Service Profil automatického škálování – Víkendy – Plán služby App Service
Name: Weekday profile Název: Víkendový profil
Škálování podle: Pravidla plánování a výkonu Škálování podle: Pravidla plánování a výkonu
Profil: Pracovní dny Profil: Víkend
Typ: Opakování Typ: Opakování
Cílový rozsah: 5 až 20 instancí Cílový rozsah: 3 až 10 instancí
Dny: pondělí, úterý, středa, čtvrtek, pátek Dny: sobota, neděle
Čas zahájení: 9:00 Čas zahájení: 9:00
Časové pásmo: UTC-08 Časové pásmo: UTC-08
Pravidlo automatického škálování (vertikální navýšení kapacity) Pravidlo automatického škálování (vertikální navýšení kapacity)
Prostředek: Produkční (App Service Environment) Prostředek: Produkční (App Service Environment)
Metrika: Procento procesoru Metrika: Procento procesoru
Operace: Větší než 60 % Operace: Větší než 80 %
Trvání: 5 minut Trvání: 10 minut
Časová agregace: Průměr Časová agregace: Průměr
Akce: Zvýšení počtu o 2 Akce: Zvýšení počtu o 1
Ochladnutí (minuty): 15 Ochladnutí (minuty): 20
Pravidlo automatického škálování (vertikální snížení kapacity) Pravidlo automatického škálování (vertikální snížení kapacity)
Prostředek: Produkční (App Service Environment) Prostředek: Produkční (App Service Environment)
Metrika: Procento procesoru Metrika: Procento procesoru
Operace: Méně než 30 % Operace: Méně než 20 %
Trvání: 10 minut Trvání: 15 minut
Časová agregace: Průměr Časová agregace: Průměr
Akce: Snížit počet o 1 Akce: Snížit počet o 1
Ochladnutí (minuty): 20 Ochladnout (minuty): 10

Míra inflace plánu služby App Service

Plány služby App Service, které jsou nakonfigurované pro automatické škálování, to dělají s maximální rychlostí za hodinu. Tuto sazbu je možné vypočítat na základě hodnot zadaných v pravidle automatického škálování.

Pochopení a výpočet míry inflace plánu služby App Service je důležité pro automatické škálování služby App Service Environment, protože změny škálování ve fondu pracovních procesů nejsou okamžité.

Míra inflace plánu služby App Service se vypočítá takto:

App Service plan inflation rate calculation.

Na základě automatického škálování – pravidlo vertikálního navýšení kapacity pro profil Pracovní den v plánu produkční služby App Service:

App Service plan inflation rate for weekdays based on Autoscale – Scale Up rule.

V případě automatického škálování – pravidlo vertikálního navýšení kapacity pro profil víkendu plánu služby App Service v produkčním prostředí by vzorec vyřešil následující:

App Service plan inflation rate for weekends based on Autoscale – Scale Up rule.

Tuto hodnotu lze také vypočítat pro operace vertikálního snížení kapacity.

Na základě automatického škálování – pravidlo vertikálního snížení kapacity pro profil Pracovní den v plánu služby App Service v produkčním prostředí by vypadalo takto:

App Service plan inflation rate for weekdays based on Autoscale – Scale Down rule.

V případě automatického škálování – pravidlo vertikálního snížení kapacity pro víkendový profil plánu služby App Service v produkčním prostředí by vzorec vyřešil následující:

App Service plan inflation rate for weekends based on Autoscale – Scale Down rule.

Plán produkční služby App Service se může během týdne zvýšit maximální rychlostí osmi instancí za hodinu a čtyři instance za hodinu během víkendu. Může uvolnit instance s maximální rychlostí čtyř instancí za hodinu v týdnu a šest instancí za hodinu během víkendů.

Pokud je ve fondu pracovních procesů hostováno více plánů služby App Service, musíte vypočítat celkovou míru inflace jako součet míry inflace pro všechny plány služby App Service, které jsou hostovány v daném fondu pracovních procesů.

Total inflation rate calculation for multiple App Service plans hosted in a worker pool.

K definování pravidel automatického škálování fondu pracovních procesů použijte míru inflace plánu služby App Service.

Fondy pracovních procesů, které hostují plány služby App Service nakonfigurované na automatické škálování, musí být přiděleny vyrovnávací paměti kapacity. Vyrovnávací paměť umožňuje operace automatického škálování podle potřeby zvětšit a zmenšit plán služby App Service. Minimální vyrovnávací pamětí by byla vypočtená míra inflace plánu služby App Service.

Vzhledem k tomu, že použití operací škálování služby App Service Environment nějakou dobu trvá, měla by jakákoli změna zohlednit další změny poptávky, ke kterým může dojít, když probíhá operace škálování. Pokud chcete tuto latenci přizpůsobit, doporučujeme použít vypočítanou míru inflace plánu služby App Service jako minimální počet instancí přidaných pro každou operaci automatického škálování.

S těmito informacemi může Frank definovat následující profil a pravidla automatického škálování:

Autoscale profile rules for LOB example.

Profil automatického škálování – Pracovní dny Profil automatického škálování – Víkendy
Name: Weekday profile Název: Víkendový profil
Škálování podle: Pravidla plánování a výkonu Škálování podle: Pravidla plánování a výkonu
Profil: Pracovní dny Profil: Víkend
Typ: Opakování Typ: Opakování
Cílový rozsah: 13 až 25 instancí Cílový rozsah: 6 až 15 instancí
Dny: pondělí, úterý, středa, čtvrtek, pátek Dny: sobota, neděle
Čas zahájení: 7:00 Čas zahájení: 9:00
Časové pásmo: UTC-08 Časové pásmo: UTC-08
Pravidlo automatického škálování (vertikální navýšení kapacity) Pravidlo automatického škálování (vertikální navýšení kapacity)
Zdroj: Fond pracovních procesů 1 Zdroj: Fond pracovních procesů 1
Metrika: Pracovní procesy k dispozici Metrika: Pracovní procesy k dispozici
Operace: Méně než 8 Operace: Méně než 3
Trvání: 20 minut Trvání: 30 minut
Časová agregace: Průměr Časová agregace: Průměr
Akce: Zvýšení počtu o 8 Akce: Zvýšení počtu o 3
Odchladnutí (minuty): 180 Odchladnutí (minuty): 180
Pravidlo automatického škálování (vertikální snížení kapacity) Pravidlo automatického škálování (vertikální snížení kapacity)
Zdroj: Fond pracovních procesů 1 Zdroj: Fond pracovních procesů 1
Metrika: Pracovní procesy k dispozici Metrika: Pracovní procesy k dispozici
Operace: Větší než 8 Operace: Větší než 3
Trvání: 20 minut Trvání: 15 minut
Časová agregace: Průměr Časová agregace: Průměr
Akce: Snížit počet o 2 Akce: Snížit počet o 3
Odchladnutí (minuty): 120 Odchladnutí (minuty): 120

Cílový rozsah definovaný v profilu se vypočítá minimálními instancemi definovanými v profilu plánu služby App Service + vyrovnávací paměti.

Maximální rozsah by byl součet všech maximálních rozsahů pro všechny plány služby App Service hostované ve fondu pracovních procesů.

Počet zvýšení počtu pravidel vertikálního navýšení kapacity by se měl nastavit na alespoň 1X míru inflace plánu služby App Service pro vertikální navýšení kapacity.

Snížit počet je možné upravit na něco mezi 1/2X nebo 1X míru inflace plánu služby App Service pro snížení kapacity.

Automatické škálování front-endového fondu

Pravidla pro automatické škálování front-endu jsou jednodušší než pro fondy pracovních procesů. Především byste měli
ujistěte se, že doba trvání měření a časovačů cooldownu berou v úvahu, že operace škálování v plánu služby App Service nejsou okamžité.

V tomto scénáři Frank ví, že se míra chyb zvyšuje po dosažení 80% využití procesoru a nastaví pravidlo automatického škálování tak, aby se instance zvýšily následujícím způsobem:

Autoscale settings for front-end pool.

Profil automatického škálování – front-endy
Název: Automatické škálování – Front-endy
Škálování podle: Pravidla plánování a výkonu
Profil: Každý den
Typ: Opakování
Cílový rozsah: 3 až 10 instancí
Dny: Každý den
Čas zahájení: 9:00
Časové pásmo: UTC-08
Pravidlo automatického škálování (vertikální navýšení kapacity)
Zdroj: Front-endový fond
Metrika: Procento procesoru
Operace: Větší než 60 %
Trvání: 20 minut
Časová agregace: Průměr
Akce: Zvýšení počtu o 3
Odchladnutí (minuty): 120
Pravidlo automatického škálování (vertikální snížení kapacity)
Zdroj: Fond pracovních procesů 1
Metrika: Procento procesoru
Operace: Méně než 30 %
Trvání: 20 minut
Časová agregace: Průměr
Akce: Snížit počet o 3
Odchladnutí (minuty): 120