Ruční horizontální navýšení a snížení kapacity webové aplikace

Dokončeno

Pokud chcete reagovat na očekávaný vyšší nebo nižší provoz, můžete ručně horizontálně navýšit kapacitu a pak ji znovu snížit. Horizontální navýšení kapacity má navíc výhodu zvýšení dostupnosti kvůli zvýšenému počtu instancí webové aplikace. Ani při selhání jedné z instancí tak nezůstane webová aplikace nedostupná.

V případě hotelového rezervačního systému můžete provést horizontální navýšení kapacity před očekávaným sezónním nárůstem. Jakmile po skončení sezóny počet rezervačních požadavků poklesne, můžete kapacitu opět snížit.

V této lekci se dozvíte, jak ručně škálovat webovou aplikaci a jak ji škálovat zpět.

Plány služby App Service a škálovatelnost

Webová aplikace, která běží v Azure, obvykle k poskytování hostitelského prostředí používá službu Aplikace Azure Service. App Service může zajistit spuštění více instancí webové aplikace. Vyrovnává zatížení příchozích požadavků v těchto instancích. Každá z instancí běží na virtuálním počítači.

Plán služby App Service definuje prostředky dostupné pro každou instanci. Tento plán specifikuje operační systém (Windows nebo Linux), hardware (paměť, výpočetní kapacitu procesoru, úložiště disku apod.) a dostupnost služeb, jako je automatické zálohování a obnovení.

Azure nabízí řadu jasně definovaných úrovní plánu služby App Service. Tento seznam shrnuje každou z těchto úrovní v rostoucím pořadí kapacity a nákladů:

  • Úroveň Free poskytuje 1 GB místa na disku a podporu až 10 aplikací, ale jen jednu sdílenou instanci. Nemáte také k dispozici smlouvu SLA na dostupnost. Kvóta na výpočetní prostředky je pro každou aplikaci 60 minut. Plán bezplatných služeb je vhodný pro vývoj a testování aplikací místo produkčních nasazení.
  • Úroveň Shared poskytuje podporu většího počtu aplikací (až 100), které také běží na jedné sdílené instanci. Aplikace mají kvótu na výpočetní prostředky 240 minut denně. Neexistuje žádná smlouva SLA o dostupnosti.
  • Úroveň Basic podporuje neomezený počet aplikací a poskytuje více místa na disku. Kapacitu aplikací lze horizontálně navyšovat až na tři vyhrazené instance. Její součástí je smlouva SLA na 99,95% dostupnost. Na této úrovni můžete zvolit některou ze tří hladin, které poskytují různý objem výpočetního výkonu, paměti a diskového úložiště.
  • Úroveň Standard také podporuje neomezený počet aplikací. Lze ji navýšit až na 10 vyhrazených instancí a zahrnuje smlouvu SLA na 99,95% dostupnost. Podobně jako v případě úrovně Basic má i tato úroveň tři hladiny, které nabízí výkonnější sadu výpočetních, paměťových a diskových možností.
  • S úrovní Premium získáte až 20 vyhrazených instancí, smlouvu SLA na 99,95% dostupnost a několik úrovní hardwaru.
  • Úroveň Isolated se provozuje ve vyhrazené virtuální síti Azure, čímž vám poskytuje izolaci sítě i výpočetních prostředků. Tuto úroveň můžete horizontálně navýšit až na 100 instancí se smlouvou SLA na 99,95% dostupnost.

Poznámka:

Některé úrovně nejsou dostupné pro všechny operační systémy. V současnosti se například nenabízí úroveň Shared pro Linux.

Monitorování a škálování webové aplikace

Když vytvoříte webovou aplikaci, můžete buď použít nový plán služby App Service, nebo použít stávající plán. Pokud vyberete existující plán, všechny ostatní webové aplikace, které používají stejný plán, sdílejí prostředky s vaší webovou aplikací. Všechny se škálují společně, takže musí mít stejné požadavky na škálování. V opačném případě použijte pro každou z aplikací samostatný plán služby App Service.

Horizontální navyšování kapacity spočívá v přidávání instancí do plánu služby App Service, a to až do limitu dostupného pro vámi vybranou úroveň. Pokud nepoužíváte úroveň Free, účtuje se vám za každou instanci každou hodinu. Tuto akci provádíte na webu Azure Portal.

Pro efektivní škálování je klíčové vědět, kdy a do jaké míry k tomuto procesu přikročit. Výkon webové aplikace monitorujete pomocí metrik dostupných pro službu App Service. Nejjednodušším způsobem, jak tuto úlohu provést, je použít Azure Portal.

Pokud si všimnete stálého nárůstu využití prostředku (jako je využití procesoru, obsazenost paměti nebo délka fronty disku), měli byste zvážit horizontální navýšení kapacity ještě před tím, než se tyto metriky dostanou do kritického bodu. Měli byste také sledovat průměrnou dobu odezvy požadavků a počet neúspěšných požadavků. Pokud jsou oba tyto údaje vysoké, může systém běžet blízko kapacity nebo nad ní. V takovém případě je nutné provést horizontální navýšení kapacity okamžitě.

Pokud metriky indikují, že je váš systém zatížen jen mírně a má dostatek volné kapacity, může být vhodné provést horizontální snížení kapacity a ušetřit tak náklady.

V obou případech byste měli i nadále sledovat statistiky vaší webové aplikace. Nechte systém stabilizovat. Pokud metriky indikují, že aplikace je stále nedostatečně výkonná nebo převýšená, přidejte nebo podle potřeby odeberte instance.