Přehled automatického škálování v Microsoft Azure

Tento článek popisuje, Microsoft Azure je automatické škálování, jaké jsou jeho výhody a jak ho začít používat.

Azure Monitor se vztahuje jenom na Virtual Machine Scale Sets,Cloud Services,App Service – Web Apps,API Management aAzure Data Explorer Clustery.

Poznámka

Azure má dvě metody automatického škálování. Starší verze automatického škálování se vztahuje Virtual Machines (skupiny dostupnosti). Tato funkce má omezenou podporu a pro rychlejší a spolehlivější podporu automatického škálování doporučujeme migrovat na škálovací sady virtuálních počítačů. Tento článek obsahuje odkaz na použití starší technologie.

Co je automatické škálování?

Automatické škálování umožňuje mít spuštěné správné množství prostředků pro zvládnutí zatížení vaší aplikace. Umožňuje přidávat prostředky pro zvládnutí nárůstu zatížení a také ušetřit peníze odebráním prostředků, které jsou nečinné. Na základě sady pravidel určíte minimální a maximální počet instancí, které se mají spouštět, a automaticky přidávat nebo odebírat virtuální počítače. Minimální úroveň zajišťuje, aby vaše aplikace vždy běžela i bez zatížení. Maximální limity celkových možných hodinových nákladů. Mezi těmito dvěma extrémy se automaticky škáluje pomocí pravidel, která vytvoříte.

Autoscale explained. Add and remove VMs

Při splnění podmínek pravidla se aktivuje jedna nebo více akcí automatického škálování. Můžete přidávat a odebírat virtuální počítače nebo provádět jiné akce. Tento proces znázorňuje následující koncepční diagram.

Autoscale Flow Diagram

Následující vysvětlení platí pro části předchozího diagramu.

Metriky prostředků

Prostředky emitují metriky. Tyto metriky se později zpracovávají pomocí pravidel. Metriky přicházejí různými metodami. Škálovací sady virtuálních počítačů používají telemetrická data z agentů diagnostiky Azure, zatímco telemetrie pro webové aplikace a cloudové služby pochází přímo z infrastruktury Azure. Mezi běžně používané statistiky patří využití procesoru, využití paměti, počty vláken, délka fronty a využití disku. Seznam telemetrických dat, která můžete použít, najdete v tématu Běžné metriky automatického škálování.

Vlastní metriky

Můžete také využít vlastní metriky, které vaše aplikace možná vysílá. Pokud jste aplikace nakonfigurovali tak, aby odesílaly metriky do služby Application Přehledy můžete tyto metriky využít k rozhodování o tom, jestli se mají škálovat, nebo ne.

Čas

Pravidla založená na plánu jsou založená na standardu UTC. Při nastavování pravidel musíte správně nastavit časové pásmo.

Pravidla

Diagram zobrazuje pouze jedno pravidlo automatického škálování, ale mnoho z nich můžete mít. Podle potřeby můžete vytvořit složitá pravidla, která se překrývají. Mezi typy pravidel patří:

  • Založené na metrikách – tuto akci například proveďte, když využití procesoru je vyšší než 50 %.
  • Na základě času – v daném časovém pásmu můžete například každých 8:00 v sobotu aktivovat webhook.

Pravidla založená na metrikách měří zatížení aplikace a přidávají nebo odebírat virtuální počítače na základě tohoto zatížení. Pravidla založená na plánu umožňují škálovat, když vidíte časové vzory zatížení a chcete je škálovat, než dojde k možnému zvýšení nebo snížení zatížení.

Akce a automatizace

Pravidla mohou aktivovat jeden nebo více typů akcí.

  • Škálování – horizontální navýšení nebo navýšení velikosti virtuálních počítače
  • E-mail – Odešlete e-mail správcům předplatného, spolus právům pro správu nebo dalším e-mailovým adresám, které zadáte.
  • Automatizace prostřednictvím webhooků – volejte webhooky, které volají několik složitých akcí v rámci Azure nebo mimo Azure. V Azure můžete spustit runbook Azure Automation, funkci Azure nebo aplikaci logiky Azure. Příkladem adresy URL třetí strany mimo Azure jsou služby jako Slack a Twilio.

Nastavení automatického škálování

Automatické škálování používá následující terminologii a strukturu.

  • Modul automatického škálování čte nastavení automatického škálování a určuje, jestli se má škálovat nahoru nebo dolů. Obsahuje jeden nebo více profilů, informace o cílovém prostředku a nastavení oznámení.

    • Profil automatického škálování je kombinací:

      • nastavení kapacity, které určuje minimální, maximální a výchozí hodnoty počtu instancí.

      • sada pravidel, z nichž každé zahrnuje aktivační událost (čas nebo metriku) a akci škálování (nahoru nebo dolů).

      • recurrence, které označuje, kdy by mělo automatické škálování tento profil provádět.

        Můžete mít více profilů, které vám umožní postarat se o různé překrývající se požadavky. Můžete mít různé profily automatického škálování pro různé denní doby nebo dny v týdnu, například.

    • Nastavení oznámení definuje, jaká oznámení by se měla zobrazit, když dojde k události automatického škálování na základě splnění kritérií jednoho z profilů nastavení automatického škálování. Automatické škálování může upozornit na jednu nebo více e-mailových adres nebo volat jeden nebo více webhooků.

Azure autoscale setting, profile, and rule structure

Úplný seznam konfigurovatelných polí a popisů je k dispozici v tématu Automatické škálování REST API.

Příklady kódu najdete v tématu

Horizontální vs. vertikální škálování

Automatické škálování se škáluje pouze horizontálně, což je zvýšení nebo snížení ("snížení") počtu instancí virtuálních počítače. Horizontální řešení je v cloudové situaci flexibilnější, protože umožňuje spouštět potenciálně tisíce virtuálních počítače pro zvládnutí zatížení.

Naproti tomu vertikální škálování se liší. Udržuje stejný počet virtuálních počítače, ale má větší nebo menší výkon ("nižší") výkon. Výkon se měří v paměti, rychlosti procesoru, místa na disku atd. Vertikální škálování má více omezení. Závisí na dostupnosti většího hardwaru, který rychle dosáhne horního limitu a může se lišit podle oblasti. Vertikální škálování obvykle také vyžaduje zastavení a restartování virtuálního počítače.

Metody přístupu

Automatické škálování můžete nastavit prostřednictvím

Podporované služby pro automatické škálování

Služba Dokumentace & ke schématu
Web Apps Škálování Web Apps
Cloud Services Automatické škálování cloudové služby
Virtual Machines: Classic Škálování klasických sad dostupnosti virtuálních počítačů
Virtual Machines: Windows škálovací sady Škálování škálovací sady virtuálních počítačů v Windows
Virtual Machines: Škálovací sady pro Linux Škálování škálovací sady virtuálních počítačů v Linuxu
Virtual Machines: Windows příklad Pokročilá konfigurace automatického škálování Resource Manager šablon pro VM Scale Sets
Azure App Service Škálování aplikace ve službě Azure App Service
API Management service Automatické škálování instance služby Azure API Management
Azure Data Explorer clustery Správa Azure Data Explorer clusterů tak, aby vyhovovaly měnícím se požadavkům
Logic Apps Přidává se kapacita ISE (Integration Service Environment).
Spring Cloud Nastavení automatického škálování pro aplikace mikroslužeb
Service Bus automaticky aktualizovat jednotky zasílání zpráv z oboru názvů Azure Service Bus

Další kroky

Další informace o automatickém škálování najdete v předchozích návodech k automatickému škálování nebo na těchto zdrojích informací: