Sdílet prostřednictvím


Spolehlivost ve službě Azure Application Gateway v2

Azure Application Gateway je nástroj pro vyrovnávání zatížení webového provozu, který můžete použít ke správě provozu do webových aplikací. Poskytuje pokročilé funkce, jako je automatické škálování, redundance zón, statické virtuální IP adresy (VIP) a integrace firewallu webových aplikací (WAF), které zajišťují vysoce dostupné a zabezpečené služby doručování aplikací.

Při používání Azure je spolehlivost sdílenou odpovědností. Microsoft nabízí celou řadu možností, které podporují odolnost a obnovení. Zodpovídáte za pochopení toho, jak tyto možnosti fungují ve všech službách, které používáte, a výběrem možností, které potřebujete ke splnění vašich obchodních cílů a cílů dostupnosti.

Tento článek popisuje, jak zajistit odolnost služby Application Gateway v2 vůči nejrůznějším potenciálním výpadkům a problémům, včetně přechodných chyb, výpadků zón dostupnosti a výpadků oblastí. Zvýrazňuje také některé klíčové informace o smlouvě o úrovni služeb (SLA) služby Application Gateway v2.

Důležité

Spolehlivost vašeho celkového řešení závisí na konfiguraci back-endových serverů, do kterých služba Application Gateway směruje provoz. V závislosti na vašem řešení to můžou být virtuální počítače Azure, škálovací sady virtuálních počítačů Azure, Azure App Services nebo externí koncové body.

Back-endové servery nejsou v oboru pro tento článek, ale jejich konfigurace dostupnosti přímo ovlivňují odolnost vaší aplikace. Projděte si průvodce spolehlivostí pro všechny služby Azure ve vašem řešení a zjistěte, jak každá služba podporuje vaše požadavky na spolehlivost. Zajištěním konfigurace back-endových serverů pro zajištění vysoké dostupnosti a redundance zón můžete dosáhnout komplexní spolehlivosti pro vaši aplikaci.

Doporučení pro nasazení do produkčního prostředí

Informace o nasazení služby Application Gateway pro podporu požadavků na spolehlivost vašeho řešení a o tom, jak spolehlivost ovlivňuje další aspekty vaší architektury, najdete v tématu Osvědčené postupy architektury pro Službu Application Gateway v architektuře Azure Well-Architected Framework.

Přehled architektury spolehlivosti

Application Gateway je spravovaná služba. Je důležité pochopit některé klíčové prvky architektury služeb, abyste mohli činit informovaná rozhodnutí o spolehlivosti.

  • Brána: Když nasadíte Službu Application Gateway, nasadíte bránu, což je prostředek Azure, se kterým pracujete.

  • Instance:Instance je jedna jednotka brány. Brána má více instancí. Každá instance má svou vlastní privátní IP adresu, zpracovává provoz a směruje požadavky.

    Důležité

    Pro zajištění vysoké dostupnosti se každá brána vždy vytvoří s minimálně dvěma instancemi. Azure Portal ale může znamenat, že vaše brána má jednu instanci, i když má ve skutečnosti dvě instance.

    Platforma automaticky spravuje vytváření instancí, monitorování stavu a nahrazování instancí, které nejsou v pořádku. Spravuje také řádné odebrání instancí během událostí horizontálního navýšení kapacity. Tento proces se označuje jako vyprazdňování připojení.

    Následující diagram znázorňuje bránu se dvěma instancemi:

    Diagram znázorňující Službu Azure Application Gateway se dvěma instancemi

Pokud chcete distribuovat instance mezi více zón dostupnosti a zvýšit tak redundanci a dostupnost během selhání datacentra, můžete povolit redundanci zón.

  • Změna velikosti: Důležitým aspektem spolehlivosti brány je to, jak škáluje podle poptávky po provozu. Pokud brána není správně škálovaná, provoz nemůže tokovat a vaše aplikace může zaznamenat výpadek. Službu Application Gateway můžete nakonfigurovat tak, aby používala jeden z následujících režimů škálování.

    • Automatické škálování: Automaticky upraví počet instancí v zadaném rozsahu. Automatické škálování upravuje počet instancí na základě aktuálních nároků na provoz.

    • Ruční škálování: Vyžaduje, abyste zadali přesný počet instancí. Jste zodpovědní za výběr počtu instancí, který splňuje vaše dopravní zatížení.

    Jednotka kapacity představuje množství kapacity, kterou může brána zpracovat. Jednotka kapacity je syntetická míra, která zahrnuje provoz, počet připojení a výpočetní prostředky. Každá instance dokáže zpracovat alespoň 10 jednotek kapacity. Další informace najdete v tématu Škálování služby Application Gateway v2 a WAF v2.

  • Sondy stavu: Application Gateway používá sondy stavu k nepřetržitému monitorování back-endových serverů, jako jsou jednotlivé aplikační servery. Při zjištění serverů, které nejsou v pořádku, je možné provoz automaticky přesměrovat na back-endové servery, které nejsou v pořádku.

Odolnost proti přechodným chybám

Přechodné chyby jsou krátká, přerušovaná selhání ve složkách. V distribuovaném prostředí, jako je cloud, se vyskytují často a jsou normální součástí provozu. Přechodné chyby se opravují po krátké době. Je důležité, aby vaše aplikace mohly zpracovávat přechodné chyby, obvykle opakováním ovlivněných požadavků.

Všechny aplikace hostované v cloudu by měly při komunikaci se všemi cloudovými rozhraními API, databázemi a dalšími komponentami postupovat podle pokynů pro zpracování přechodných chyb Azure. Další informace najdete v tématu Doporučení pro zpracování přechodných chyb.

Při používání služby Application Gateway zvažte následující osvědčené postupy:

  • Implementujte logiku opakování. Klienti by měli implementovat vhodné mechanismy opakování pro přechodné selhání připojení.

  • Nakonfigurujte sondy stavu s odolností. Nakonfigurujte zdravotní sondy tak, aby umožnily dostatečnou dobu pro přechodné chyby. Sondy stavu je možné nakonfigurovat s prahovou hodnotou pro selhání, která určuje počet po sobě jdoucích neúspěšných pokusů o připojení, po jejichž překročení bude back-endový server označen jako nefunkční. Výchozí hodnota tří zajišťuje, že přechodné chyby na back-endových serverech neaktivují službu Application Gateway, aby zbytečně označovala server jako nezdravý.

Odolnost proti chybám zóny dostupnosti

Zóny dostupnosti jsou fyzicky oddělené skupiny datacenter v rámci oblasti Azure. Když jedna zóna selže, mohou služby přejít na jednu ze zbývajících zón.

Služba Application Gateway poskytuje dva typy podpory zóny dostupnosti při nasazení Standard_v2 nebo brány WAF_v2 v podporované oblasti.

  • Zónově redundantní: Azure automaticky distribuuje instance mezi dvě nebo více zón dostupnosti.

    Když nasadíte novou bránu, je ve výchozím nastavení zónově redundantní.

    Následující diagram znázorňuje zónově redundantní bránu se třemi instancemi distribuovanými mezi tři zóny dostupnosti:

    Diagram znázorňující Službu Azure Application Gateway se třemi instancemi v samostatné zóně dostupnosti

  • Zónový: Azure nasadí všechny instance služby Application Gateway do jedné zóny, kterou vyberete ve zvolené oblasti Azure.

    Následující diagram znázorňuje zónovou bránu se třemi instancemi nasazenými do stejné zóny dostupnosti:

    Diagram znázorňující Službu Azure Application Gateway se třemi instancemi ve stejné zóně dostupnosti

    Důležité

    Připnutí k jedné zóně dostupnosti se doporučuje jenom v případě, že latence mezi zónami je pro vaše potřeby příliš vysoká a když ověříte, že latence nesplňuje vaše požadavky. Sama o sobě zónová brána neposkytuje odolnost vůči výpadku zóny dostupnosti. Pokud chcete zlepšit odolnost zónového nasazení služby Application Gateway, musíte explicitně nasadit samostatné brány do několika zón dostupnosti a nakonfigurovat směrování provozu a převzetí služeb při selhání.

Požadavky

  • Podpora oblastí: Application Gateway podporuje zóny dostupnosti pro Standard_v2 a WAF_v2 úrovně ve všech oblastech Azure, které podporují zóny dostupnosti.

  • SKU: Pokud chcete povolit podporu zóny dostupnosti, musíte použít skladovou položku Standard_v2 nebo WAF_v2.

  • Počet instancí: Brána musí mít aspoň dvě instance.

    Poznámka:

    Všechny brány mají minimálně dvě instance pro zajištění vysoké dostupnosti. I když azure Portal značí, že vaše brána má jednu instanci, interně se vždy vytvoří s minimálně dvěma instancemi.

Úvahy

Zónově redundantní brány jsou rozdělené mezi dvě nebo více zón dostupnosti v dané oblasti. Například v oblasti, která má tři zóny dostupnosti, má nasazení služby Application Gateway v2 zónově redundantní instance alespoň ve dvou těchto zónách. V závislosti na regionální kapacitě a rozhodnutích o platformě se instance můžou rozprostřet mezi dvě zóny nebo tři zóny.

Náklady

Podpora zóny dostupnosti pro Application Gateway v2 neúčtuje další poplatky nad rámec standardního cenového tarifu jednotek kapacity. Podrobnosti o cenách najdete v tématu Vysvětlení cen služby Application Gateway a WAF a Application Gateway.

Konfigurujte podporu zón dostupnosti

Tato část vysvětluje, jak nakonfigurovat podporu zón dostupnosti pro brány.

  • Vytvořte novou bránu s podporou zóny dostupnosti. Přístup, který použijete ke konfiguraci zón dostupnosti, závisí na tom, jestli chcete vytvořit zónově redundantní nebo zónovou bránu.

    • Zónově redundantní: Nové brány se ve výchozím nastavení vytvářejí jako zónově redundantní. Instance jsou rozložené do více zón dostupnosti a můžou v této oblasti používat dvě nebo více zón.

      Pokud chcete nasadit novou bránu, přečtěte si článek Rychlý start: Směrování webového provozu pomocí služby Application Gateway – Azure Portal.

      Pokud používáte Azure CLI, Azure PowerShell, Bicep, šablony Azure Resource Manageru (šablony ARM) nebo Terraform, můžete volitelně zadat zóny dostupnosti pro nasazení brány. Zónově redundantní bránu můžete nasadit zadáním dvou nebo více zón. Doporučujeme však vynechat seznam zón, aby brána mohl používat všechny zóny dostupnosti, pokud nemáte konkrétní důvod, proč konkrétní zónu nepoužívat.

    • Zónový: Zónovou bránu můžete nasadit pomocí následujících nástrojů.

      • Azure CLI: Zóny byste měli explicitně vybrat pomocí --zones parametru az network application-gateway create v příkazu. Pokud chcete bránu připnout k jedné zóně, zadejte číslo logické zóny.

      • Azure PowerShell:-Zone Použijte parametr v New-AzApplicationGateway příkazu. Pokud chcete bránu připnout k jedné zóně, zadejte číslo logické zóny.

      • Bicep a šablony ARM:zones Nakonfigurujte vlastnost v definici prostředku. Pokud chcete bránu připnout k jedné zóně, zadejte číslo logické zóny.

      Poznámka:

      Když vyberete, které zóny dostupnosti se mají použít, ve skutečnosti vybíráte logickou zónu dostupnosti. Pokud nasadíte jiné součásti úloh v jiném předplatném Azure, můžou pro přístup ke stejné zóně fyzické dostupnosti použít jiné číslo logické zóny dostupnosti. Další informace najdete v tématu Fyzické a logické zóny dostupnosti.

  • Změňte konfiguraci zóny dostupnosti existující instance služby Application Gateway v2. Všechny brány jsou zónově redundantní, pokud jste je nenakonfigurovali tak, aby byly zónové.

    Pokud potřebujete přejít z zónově redundantní brány na zónovou konfiguraci, musíte nasadit novou bránu.

  • Zakažte podporu zóny dostupnosti. Podporu zóny dostupnosti nejde zakázat. Všechny brány v oblastech, které podporují zóny dostupnosti, musí být zónově redundantní nebo zónově redundantní.

Plánování a řízení kapacit

Pokud plánujete selhání zón pro zónově redundantní aplikační bránu nebo několik zónových bran nasazených do více zón, zvažte, že instance v přeživších zónách můžou zaznamenat zvýšené zatížení při redistribuci provozu. U připojení může docházet k krátkému přerušení, které může trvat několik sekund.

Pokud chcete efektivně spravovat kapacitu, proveďte následující akce:

  • Použijte automatické škálování. Nakonfigurujte automatické škálování s vhodným maximálním počtem instancí pro zvládnutí potenciální redistribuce provozu během výpadku zóny.

    Pokud používáte ruční škálování, zvažte naddimenzování počtu instancí ve vaší bráně, abyste se připravili na selhání zóny dostupnosti. Nadměrné zřizování umožňuje řešení tolerovat určitou míru ztráty kapacity a současně nadále fungovat bez snížení výkonu. Pro více informací viz Správa kapacity s nadměrným přidělováním.

  • Reagujte na změny ve vzorech provozu. Monitorujte metriky kapacity a upravte parametry škálování na základě vzorů provozu a požadavků na výkon.

Chování, když jsou všechny zóny v pořádku

Následující část popisuje, co očekávat, když je služba Application Gateway v2 nakonfigurovaná s podporou zóny dostupnosti a všechny zóny dostupnosti jsou funkční.

  • Směrování provozu mezi zónami: Application Gateway automaticky distribuuje příchozí požadavky mezi instance ve všech zónách, které brána používá. Tato konfigurace aktivní-aktivní zajišťuje optimální výkon a distribuci zatížení za normálních provozních podmínek.

  • Správa instancí: Platforma automaticky spravuje umístění instancí napříč zónami, které brána používá. Nahrazuje neúspěšné instance a udržuje nakonfigurovaný počet instancí. Monitorování stavu zajišťuje, aby provoz přijímaly pouze instance, které jsou v pořádku.

Chování při selhání zóny

Následující část popisuje, co očekávat, když je služba Application Gateway v2 nakonfigurovaná s podporou zóny dostupnosti a jedna nebo více zón dostupnosti není k dispozici.

  • Detekce a odpověď: Odpovědnost za detekci a odpověď závisí na konfiguraci zóny dostupnosti, kterou vaše brána používá.

    • Zónově redundantní: Microsoft spravuje detekci selhání zóny a automaticky iniciuje přepnutí služeb při selhání. Nevyžaduje se žádná akce zákazníka.

    • Zónový: Potřebujete zjistit ztrátu zóny dostupnosti a zahájit převzetí služeb při selhání sekundární bránou, kterou vytvoříte v jiné zóně dostupnosti.

  • Aktivní požadavky: Během výpadku zóny se žádosti zpracovávané instancemi v této zóně ukončí. Klienti by měli požadavky opakovat podle pokynů pro zpracování přechodných chyb.

  • Očekávaná ztráta dat: Selhání zón se neočekává, že by způsobila ztrátu dat, protože Application Gateway je bezstavová služba.

  • Očekávaný výpadek: Výpadek, který můžete očekávat, závisí na konfiguraci zóny dostupnosti, kterou vaše brána používá.

    • Zónově redundantní: Během výpadků zóny můžou narazit na krátká přerušení, která obvykle trvá několik sekund při redistribuci provozu.

    • Zóna: Pokud je zóna nedostupná, vaše brána není dostupná, dokud se dostupnost zóny neobnoví.

  • Správa instancí: Chování správy instancí závisí na konfiguraci zóny dostupnosti, kterou vaše brána používá.

    • Zónově redundantní: Platforma se pokusí zachovat kapacitu brány vytvořením dočasných instancí v jiných zónách dostupnosti.

      Služba Application Gateway interně používá škálovací sady virtuálních počítačů, které provádějí distribuci zátěže mezi zóny s maximálním úsilím. Kvůli tomuto chování nemusí dojít k operacím škálování, pokud kapacitu nelze rovnoměrně rozdělit mezi zóny (+/- 1 instance).

    • Zónový: Jste zodpovědní za vytváření instancí ve zdravých zónách, pokud je potřebujete.

  • Přesměrování provozu: Chování přesměrování provozu závisí na konfiguraci zóny dostupnosti, kterou vaše brána používá.

    • Zónově redundantní: Application Gateway okamžitě redistribuuje tento provoz do instancí ve funkčních zónách, včetně všech instancí, které jsou dočasně vytvořeny.

    • Zónový: Pokud je zóna nedostupná, brána je také nedostupná. Pokud máte sekundární bránu v jiné zóně dostupnosti, zodpovídáte za přesměrování provozu na tuto sekundární bránu.

Obnovení zóny

Chování obnovení zóny závisí na konfiguraci zóny dostupnosti, kterou vaše brána používá:

  • Zónově redundantní: Když se ovlivněná zóna dostupnosti obnoví, služba Application Gateway automaticky provede následující akce:

    • Obnoví instance v obnovené zóně.

    • Odebere všechny dočasné instance vytvořené v jiných zónách během výpadku.

    • Vrátí normální distribuci provozu napříč všemi dostupnými zónami.

  • Zonální: Po obnově zóny dostupnosti jste zodpovědní za přesměrování provozu zpět na bránu v původní zóně dostupnosti.

Testování poruch zón

Možnosti pro testování selhání zón závisí na konfiguraci zóny dostupnosti, kterou vaše brána používá.

  • Zónově redundantní: Platforma Application Gateway plně spravuje směrování provozu, převzetí služeb při selhání a navrácení služeb po obnovení pro zónově redundantní brány. Protože tuto funkci spravuje Microsoft, nemusíte zahajovat ani ověřovat procesy selhání zóny dostupnosti. Platforma transparentně zpracovává všechny scénáře selhání zón.

  • Zónový: Některé aspekty selhání zóny dostupnosti můžete simulovat explicitním zastavením brány. Zastavením brány můžete otestovat, jak ostatní systémy a nástroje pro vyrovnávání zatížení zpracovávají výpadek brány. Další informace najdete v tématu Zastavení a spuštění služby Application Gateway.

Odolnost proti selháním v celé oblasti

Application Gateway v2 je služba s jednou oblastí. Pokud oblast přestane být dostupná, brána je také nedostupná.

Vlastní řešení pro více regionů pro odolnost systémů

Pokud chcete zajistit odolnost více oblastí pomocí služby Application Gateway v2, musíte nasadit samostatné brány v každé požadované oblasti a implementovat správu provozu napříč oblastmi. Zodpovídáte za nasazení a konfiguraci jednotlivých bran, jakož i za směrování provozu a přepnutí při selhání. Vezměte v úvahu následující body:

  • Konfigurujte konzistentní pravidla a zásady služby Application Gateway napříč oblastmi. Infrastrukturu můžete definovat jako kód (IaC) pomocí nástrojů, jako je Bicep nebo Terraform, a zjednodušit tak nasazení a konfigurace napříč oblastmi.

  • Nasaďte řešení globálního vyrovnávání zatížení, které může odesílat provoz mezi vašimi regionálními bránami. Globální služby vyrovnávání zatížení v Azure jsou Azure Traffic Manager a Azure Front Door. Každá služba směruje provoz na základě kontrol stavu, geografické blízkosti nebo metrik výkonu. Azure Front Door také poskytuje řadu dalších funkcí, včetně ochrany před útoky DDoS (Distributed Denial-of-Service), možností WAF a pokročilých pravidel a funkcí směrování.

  • Mimo bránu zvažte replikaci back-endových aplikací a dat napříč oblastmi. Projděte si průvodce spolehlivostí pro každou službu Azure a seznamte se s přístupy k nasazení ve více oblastech.

Příklad přístupu najdete v tématu Použití služby Application Gateway s Traffic Managerem.

Zálohování a obnovení

Application Gateway v2 je bezstavová služba, která nevyžaduje tradiční operace zálohování a obnovení. Všechna konfigurační data jsou uložená v Resource Manageru a je možné je znovu nasadit pomocí přístupů IaC, jako jsou soubory Bicep nebo šablony ARM.

Pro správu konfigurace a zotavení po havárii byste měli provést následující akce:

  • Definujte konfiguraci nasazení služby Application Gateway pomocí souborů Bicep nebo šablon ARM nebo exportujte konfiguraci existující brány.

  • Ukládejte certifikáty TLS (Transport Layer Security) ve službě Azure Key Vault pro zajištění zabezpečené správy a replikace.

  • Vlastní konfigurace, pravidla a zásady správy dokumentů a verzí

  • Implementujte kanály automatizovaného nasazení pro konzistentní zřizování brány.

U většiny řešení byste se neměli spoléhat výhradně na zálohy. Místo toho využijte další funkce popsané v tomto průvodci k podpoře vašich požadavků na odolnost. Zálohy ale chrání před některými riziky, která jiné přístupy nechrání. Další informace najdete v tématu Co jsou redundance, replikace a zálohování?.

Odolnost vůči údržbě služeb

Application Gateway v2 provádí pravidelné upgrady služeb a další úlohy údržby. Aby se během upgradu zachovala očekávaná kapacita, platforma během procesu upgradu automaticky přidá další instance brány. Musíte ale zajistit, aby měla podsíť brány dostatek volného adresního prostoru pro IP adresy pro vytvoření dočasných instancí. Další informace najdete v tématu Jak služba Application Gateway zpracovává rutinní údržbu?.

Smlouva o úrovni služeb

Smlouva o úrovni služeb (SLA) pro služby Azure popisuje očekávanou dostupnost každé služby a podmínky, které musí vaše řešení splnit, aby bylo dosaženo očekávané dostupnosti. Další informace najdete v tématu Smlouvy SLA pro online služby.

Aby brána měla nárok na smlouvu SLA dostupnosti služby Application Gateway, musí splňovat následující kritéria:

  • Aby bylo možné vyrovnávání zatížení HTTP provést, musí být správně nakonfigurované.
  • Musí být buď zónově redundantní, nebo musí být nakonfigurovaná tak, aby používala automatické škálování.