Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure Application Gateway is een load balancer voor webverkeer die u kunt gebruiken om verkeer naar uw webtoepassingen te beheren. Het biedt geavanceerde functies zoals automatisch schalen, zoneredundantie, STATISCHE VIP-adressen (virtual IP)-adressen en WAF-integratie (Web Application Firewall) om maximaal beschikbare en veilige services voor het leveren van toepassingen te leveren.
Wanneer u Azure gebruikt, is betrouwbaarheid een gedeelde verantwoordelijkheid. Microsoft biedt een scala aan mogelijkheden ter ondersteuning van tolerantie en herstel. U bent verantwoordelijk voor het begrijpen van de werking van deze mogelijkheden binnen alle services die u gebruikt en het selecteren van de mogelijkheden die u nodig hebt om te voldoen aan uw bedrijfsdoelstellingen en beschikbaarheidsdoelen.
In dit artikel wordt beschreven hoe u Application Gateway v2 tolerant maakt voor een verscheidenheid aan mogelijke storingen en problemen, waaronder tijdelijke fouten, storingen in de beschikbaarheidszone en regiostoringen. Enkele belangrijke stukken informatie over de Service Level Agreement (SLA) van Application Gateway v2 worden ook belicht.
Belangrijk
De betrouwbaarheid van uw algehele oplossing is afhankelijk van de configuratie van de back-endservers waarnaar Application Gateway verkeer routeert. Afhankelijk van uw oplossing kunnen dit virtuele Azure-machines (VM's), virtuele-machineschaalsets van Azure, Azure App Services of externe eindpunten zijn.
Uw back-endservers vallen niet binnen het bereik van dit artikel, maar de beschikbaarheidsconfiguraties zijn rechtstreeks van invloed op de tolerantie van uw toepassing. Raadpleeg de betrouwbaarheidshandleidingen voor alle Azure-services in uw oplossing om te begrijpen hoe elke service uw betrouwbaarheidsvereisten ondersteunt. Door ervoor te zorgen dat uw back-endservers ook zijn geconfigureerd voor hoge beschikbaarheid en zoneredundantie, kunt u end-to-end betrouwbaarheid voor uw toepassing bereiken.
Aanbevelingen voor productie-implementatie
Zie best practices voor architectuur voor Application Gateway in het Azure Well-Architected Framework voor meer informatie over het implementeren van Application Gateway ter ondersteuning van de betrouwbaarheidsvereisten van uw oplossing en hoe betrouwbaarheid van invloed is op andere aspecten van uw architectuur.
Overzicht van betrouwbaarheidsarchitectuur
Application Gateway is een beheerde service. Het is belangrijk om inzicht te hebben in enkele belangrijke elementen van de servicearchitectuur, zodat u weloverwogen beslissingen over betrouwbaarheid kunt nemen.
Gateway: Wanneer u Application Gateway implementeert, implementeert u een gateway, de Azure-resource waarmee u werkt.
Exemplaren: Een exemplaar is één eenheid van de gateway. Een gateway heeft meerdere instanties. Elk exemplaar heeft een eigen privé-IP-adres, verwerkt verkeer en routeert aanvragen.
Belangrijk
Voor hoge beschikbaarheid wordt elke gateway altijd gemaakt met minimaal twee exemplaren. Azure Portal kan echter aangeven dat uw gateway één exemplaar heeft, zelfs als deze daadwerkelijk twee exemplaren heeft.
Het platform beheert automatisch het maken van exemplaren, statuscontrole en vervanging van beschadigde exemplaren. Het beheert ook het probleemloos verwijderen van exemplaren tijdens het inschalen van gebeurtenissen. Dit proces wordt ook wel verbindingsafvoer genoemd.
In het volgende diagram ziet u een gateway met twee exemplaren:
Als u exemplaren over meerdere beschikbaarheidszones wilt distribueren en zo redundantie en beschikbaarheid wilt verhogen tijdens storingen in het datacenter, kunt u zoneredundantie inschakelen.
Schalen: Een belangrijk aspect van de betrouwbaarheid van een gateway is hoe deze wordt geschaald om te voldoen aan de vraag naar verkeer. Als een gateway niet op de juiste manier wordt geschaald, kan het verkeer niet stromen en kan uw toepassing downtime ondervinden. U kunt Application Gateway configureren voor het gebruik van een van de volgende schaalmodi.
Automatisch schalen: Hiermee wordt automatisch het aantal exemplaren in een bereik aangepast dat u opgeeft. Met automatisch schalen wordt het aantal exemplaren geschaald op basis van de huidige vraag naar verkeer.
Handmatig schalen: Hiervoor moet u een exact aantal exemplaren opgeven. U bent verantwoordelijk voor het selecteren van een aantal exemplaren dat voldoet aan uw verkeersvraag.
Een capaciteitseenheid vertegenwoordigt een hoeveelheid capaciteit die de gateway kan verwerken. Een capaciteitseenheid is een synthetische meting die verkeer, het aantal verbindingen en rekenresources bevat. Elk exemplaar kan ten minste 10 capaciteitseenheden verwerken. Zie Application Gateway v2 en WAF v2 schalen voor meer informatie.
Statustests: Application Gateway maakt gebruik van statustests om uw back-endservers, zoals afzonderlijke toepassingsservers , continu te bewaken. Verkeer kan automatisch worden omgeleid naar goede back-endservers wanneer beschadigde servers worden gedetecteerd.
Tolerantie voor tijdelijke fouten
Tijdelijke fouten zijn korte, onregelmatige fouten in onderdelen. Ze vinden vaak plaats in een gedistribueerde omgeving, zoals de cloud, en ze zijn een normaal onderdeel van de bewerkingen. Tijdelijke fouten corrigeren zichzelf na een korte periode. Het is belangrijk dat uw toepassingen tijdelijke fouten kunnen afhandelen, meestal door de betreffende aanvragen opnieuw uit te voeren.
Alle in de cloud gehoste toepassingen moeten de richtlijnen voor tijdelijke foutafhandeling van Azure volgen wanneer ze communiceren met eventuele in de cloud gehoste API's, databases en andere onderdelen. Zie Aanbevelingen voor het afhandelen van tijdelijke foutenvoor meer informatie.
Houd rekening met de volgende aanbevolen procedures wanneer u Application Gateway gebruikt:
Logica voor opnieuw proberen implementeren. Clients moeten de juiste mechanismen voor nieuwe pogingen implementeren voor tijdelijke verbindingsfouten.
Configureer statustests met tolerantie. Configureer uw statustests om een respijtperiode toe te staan voor tijdelijke fouten. Statustests kunnen worden geconfigureerd met een drempelwaarde die niet in orde is. Hiermee geeft u het aantal opeenvolgende mislukte verbindingspogingen op waarmee de back-endserver moet worden gemarkeerd als beschadigd. De standaardwaarde van drie zorgt ervoor dat tijdelijke fouten in uw back-endservers application gateway niet onnodig markeren als beschadigd.
Tolerantie voor fouten in beschikbaarheidszones
Beschikbaarheidszones zijn fysiek gescheiden groepen datacenters binnen een Azure-regio. Wanneer één zone uitvalt, kunnen services een failover uitvoeren naar een van de resterende zones.
Application Gateway biedt twee typen ondersteuning voor beschikbaarheidszones wanneer u een Standard_v2 of WAF_v2 gateway in een ondersteunde regio implementeert.
Zone-redundant: Azure distribueert de exemplaren automatisch over twee of meer beschikbaarheidszones.
Wanneer u een nieuwe gateway implementeert, is deze standaard zone-redundant.
In het volgende diagram ziet u een zone-redundante gateway met drie exemplaren die zijn verdeeld over drie beschikbaarheidszones:
Zonaal: Azure implementeert alle Application Gateway-exemplaren in één zone die u selecteert in uw gekozen Azure-regio.
In het volgende diagram ziet u een zonegebonden gateway met drie exemplaren die zijn geïmplementeerd in dezelfde beschikbaarheidszone:
Belangrijk
Vastmaken aan één beschikbaarheidszone wordt alleen aanbevolen wanneer de latentie tussen zones te hoog is voor uw behoeften en wanneer u controleert of de latentie niet aan uw vereisten voldoet. Een zonegebonden gateway biedt zelf geen tolerantie voor een storing in de beschikbaarheidszone. Als u de tolerantie van een zonegebonden Application Gateway-implementatie wilt verbeteren, moet u expliciet afzonderlijke gateways implementeren in meerdere beschikbaarheidszones en verkeersroutering en failover configureren.
Behoeften
Regioondersteuning: Application Gateway ondersteunt beschikbaarheidszones voor de Standard_v2- en WAF_v2 lagen in alle Azure-regio's die beschikbaarheidszones ondersteunen.
SKU: U moet de Standard_v2 of WAF_v2 SKU gebruiken om ondersteuning voor beschikbaarheidszones in te schakelen.
Aantal exemplaren: Uw gateway moet ten minste twee exemplaren hebben.
Opmerking
Alle gateways hebben minimaal twee exemplaren voor hoge beschikbaarheid. Zelfs als de Azure-portal aangeeft dat uw gateway één exemplaar heeft, wordt deze intern altijd gemaakt met minimaal twee exemplaren.
Overwegingen
Zone-redundante gateways worden verdeeld over twee of meer beschikbaarheidszones in de regio. In een regio met drie beschikbaarheidszones heeft een zone-redundante Application Gateway v2-implementatie bijvoorbeeld exemplaren in ten minste twee van deze zones. Afhankelijk van regionale capaciteit en platformbeslissingen kunnen exemplaren worden verdeeld over twee zones of drie zones.
Kosten
Ondersteuning voor beschikbaarheidszones voor Application Gateway v2 brengt geen extra kosten met zich mee buiten de prijs voor standaardcapaciteitseenheden. Zie Prijzen voor Application Gateway en WAF- en Application Gateway-prijzen begrijpen voor prijsinformatie.
Ondersteuning voor beschikbaarheidszones configureren
In deze sectie wordt uitgelegd hoe u ondersteuning voor beschikbaarheidszones configureert voor uw gateways.
Maak een nieuwe gateway met ondersteuning voor beschikbaarheidszones. De methode die u gebruikt om beschikbaarheidszones te configureren, is afhankelijk van of u een zone-redundante of zonegebonden gateway wilt maken.
Zone-redundant: Nieuwe gateways worden standaard gemaakt als zone-redundant. Exemplaren worden verspreid over meerdere beschikbaarheidszones en kunnen twee of meer zones in de regio gebruiken.
Als u een nieuwe gateway wilt implementeren, raadpleegt u quickstart: Webverkeer omleiden met behulp van Application Gateway - Azure Portal.
Wanneer u de Azure CLI, Azure PowerShell, Bicep, Azure Resource Manager-sjablonen (ARM-sjablonen) of Terraform gebruikt, kunt u desgewenst de beschikbaarheidszones opgeven waarin u uw gateway wilt implementeren. U kunt een zone-redundante gateway implementeren door twee of meer zones op te geven. We raden u echter aan de zonelijst weg te laten, zodat uw gateway alle beschikbaarheidszones kan gebruiken, tenzij u een specifieke reden hebt om geen specifieke zone te gebruiken.
Zonaal: U kunt een zonegebonden gateway implementeren met behulp van de volgende hulpprogramma's.
Azure CLI: U moet expliciet zones selecteren met behulp van de
--zonesparameter in deaz network application-gateway createopdracht. Als u de gateway wilt vastmaken aan één zone, geeft u het nummer van de logische zone op.Azure PowerShell: Gebruik de
-Zoneparameter in deNew-AzApplicationGatewayopdracht. Als u de gateway wilt vastmaken aan één zone, geeft u het nummer van de logische zone op.Bicep- en ARM-sjablonen: Configureer de
zoneseigenschap in de resourcedefinitie. Als u de gateway wilt vastmaken aan één zone, geeft u het nummer van de logische zone op.
Opmerking
Wanneer u selecteert welke beschikbaarheidszones u wilt gebruiken, selecteert u daadwerkelijk de logische beschikbaarheidszone. Als u andere workloadonderdelen in een ander Azure-abonnement implementeert, kunnen ze een ander nummer voor een logische beschikbaarheidszone gebruiken om toegang te krijgen tot dezelfde fysieke beschikbaarheidszone. Zie fysieke en logische beschikbaarheidszones voor meer informatie.
Wijzig de configuratie van de beschikbaarheidszone van een bestaand Application Gateway v2-exemplaar. Alle gateways zijn zone-redundant, tenzij u ze zo hebt geconfigureerd dat ze zonegebonden zijn.
Als u wilt overstappen van een zone-redundante gateway naar een zonegebonden configuratie, moet u een nieuwe gateway implementeren.
Schakel ondersteuning voor beschikbaarheidszones uit. Ondersteuning voor beschikbaarheidszones kan niet worden uitgeschakeld. Alle gateways in regio's die beschikbaarheidszones ondersteunen, moeten zone-redundant of zone-redundant zijn.
Capaciteitsplanning en -beheer
Wanneer u zonefouten plant voor een zoneredundante toepassingsgateway of meerdere zonegebonden gateways die zijn geïmplementeerd in meerdere zones, kunt u overwegen dat exemplaren in overlevende zones meer belasting kunnen ervaren wanneer verkeer opnieuw wordt gedistribueerd. Verbindingen kunnen korte onderbrekingen ondervinden die enkele seconden kunnen duren.
Voer de volgende acties uit om de capaciteit effectief te beheren:
Gebruik automatisch schalen. Configureer automatisch schalen met de juiste maximumaantal exemplaren voor het afhandelen van mogelijke herdistributie van verkeer tijdens zonestoringen.
Als u handmatig schalen gebruikt om u voor te bereiden op een fout in de beschikbaarheidszone, kunt u overwegen om het aantal exemplaren in uw gateway te overinrichtingen . Met overinrichting kan de oplossing enige mate van capaciteitsverlies tolereren, terwijl de prestaties blijven functioneren zonder verslechterde prestaties. Zie Capaciteit beheren met overinrichting voor meer informatie.
Reageren op wijzigingen in verkeerspatronen. Bewaak metrische capaciteitsgegevens en pas schaalparameters aan op basis van uw verkeerspatronen en prestatievereisten.
Gedrag wanneer alle zones in orde zijn
In de volgende sectie wordt beschreven wat u kunt verwachten wanneer Application Gateway v2 is geconfigureerd met ondersteuning voor beschikbaarheidszones en alle beschikbaarheidszones operationeel zijn.
Verkeersroutering tussen zones: Application Gateway distribueert automatisch binnenkomende aanvragen over exemplaren in alle zones die door uw gateway worden gebruikt. Deze actief-actieve configuratie zorgt voor optimale prestaties en belastingverdeling onder normale bedrijfsomstandigheden.
Exemplaarbeheer: Het platform beheert de plaatsing van exemplaren automatisch in de zones die door uw gateway worden gebruikt. Het vervangt mislukte exemplaren en onderhoudt het aantal geconfigureerde exemplaren. Statuscontrole zorgt ervoor dat alleen gezonde exemplaren verkeer ontvangen.
Gedrag tijdens een zonefout
In de volgende sectie wordt beschreven wat u kunt verwachten wanneer Application Gateway v2 is geconfigureerd met ondersteuning voor beschikbaarheidszones en een of meer beschikbaarheidszones niet beschikbaar zijn.
Detectie en reactie: De verantwoordelijkheid voor detectie en reactie is afhankelijk van de configuratie van de beschikbaarheidszone die uw gateway gebruikt.
Zone-redundant: Microsoft beheert de detectie van zonefouten en start automatisch een failover. De gebruiker hoeft verder niets te doen.
Zonaal: U moet het verlies van een beschikbaarheidszone detecteren en een failover initiëren naar een secundaire gateway die u in een andere beschikbaarheidszone maakt.
-
- Melding: Microsoft informeert u niet automatisch wanneer een zone niet beschikbaar is. U kunt Azure Resource Health echter gebruiken om te controleren op de status van een afzonderlijke resource en u kunt Resource Health-waarschuwingen instellen om u op de hoogte te stellen van problemen. U kunt Azure Service Health ook gebruiken om inzicht te hebben in de algehele status van de service, inclusief eventuele zonefouten, en u kunt Service Health-waarschuwingen instellen om u op de hoogte te stellen van problemen.
Actieve aanvragen: Tijdens een zonestoring worden aanvragen die worden verwerkt door exemplaren in die zone beëindigd. Clients moeten de aanvragen opnieuw proberen door de richtlijnen te volgen voor het afhandelen van tijdelijke fouten.
Verwachte gegevensverlies: Er wordt niet verwacht dat zonefouten gegevensverlies veroorzaken omdat Application Gateway een staatloze service is.
Verwachte downtime: De downtime die u kunt verwachten, is afhankelijk van de configuratie van de beschikbaarheidszone die uw gateway gebruikt.
Zone-redundant: Tijdens zonestoringen kunnen verbindingen korte onderbrekingen ondervinden die doorgaans enkele seconden duren wanneer het verkeer opnieuw wordt gedistribueerd.
Zonaal: Wanneer een zone niet beschikbaar is, is uw gateway niet beschikbaar totdat de beschikbaarheidszone wordt hersteld.
Exemplaarbeheer: Het gedrag van het exemplaarbeheer is afhankelijk van de configuratie van de beschikbaarheidszone die door uw gateway wordt gebruikt.
Zone-redundant: Het platform probeert de capaciteit van uw gateway te behouden door tijdelijke instanties in andere beschikbaarheidszones te maken.
Application Gateway maakt intern gebruik van virtuele-machineschaalsets, die de beste taakzoneverdeling uitvoeren. Vanwege dit gedrag kunnen schaalbewerkingen mogelijk niet optreden wanneer de capaciteit niet gelijkmatig kan worden verdeeld tussen zones (+/- 1 exemplaar).
Zonaal: U bent verantwoordelijk voor het maken van exemplaren in gezonde zones als u ze nodig hebt.
Verkeer omleiden: Het gedrag voor het omleiden van verkeer is afhankelijk van de configuratie van de beschikbaarheidszone die uw gateway gebruikt.
Zone-redundant: Application Gateway herdistribueert onmiddellijk verkeer naar de exemplaren in gezonde zones, inclusief instanties die tijdelijk worden gemaakt.
Zonaal: Wanneer een zone niet beschikbaar is, is uw gateway niet beschikbaar. Als u een secundaire gateway in een andere beschikbaarheidszone hebt, bent u verantwoordelijk voor het opnieuw routeren van verkeer naar die secundaire gateway.
Zoneherstel
Het gedrag voor zoneherstel is afhankelijk van de configuratie van de beschikbaarheidszone die uw gateway gebruikt:
Zone-redundant: Wanneer de betrokken beschikbaarheidszone wordt hersteld, voert Application Gateway automatisch de volgende acties uit:
Herstelt exemplaren in de herstelde zone
Verwijdert tijdelijke exemplaren die zijn gemaakt in andere zones tijdens de storing
Retourneert de normale verkeersdistributie in alle beschikbare zones
Zonaal: U bent verantwoordelijk voor het omleiden van verkeer naar de gateway in de oorspronkelijke beschikbaarheidszone nadat de beschikbaarheidszone is hersteld.
Testen op zonefouten
De opties voor het testen van zonefouten zijn afhankelijk van de configuratie van de beschikbaarheidszone die uw gateway gebruikt.
Zone-redundant: Het Application Gateway-platform beheert de verkeersroutering, failover en failback volledig voor zone-redundante gateways. Omdat Microsoft deze functie beheert, hoeft u geen processen voor fouten in de beschikbaarheidszone te initiëren of valideren. Het platform verwerkt alle scenario's voor zonefouten transparant.
Zonaal: U kunt enkele aspecten van het mislukken van een beschikbaarheidszone simuleren door een gateway expliciet te stoppen. Door de gateway te stoppen, kunt u testen hoe andere systemen en load balancers een storing in de gateway verwerken. Zie Application Gateway stoppen en starten voor meer informatie.
Tolerantie voor storingen in de hele regio
Application Gateway v2 is een service met één regio. Als de regio niet meer beschikbaar is, is uw gateway ook niet beschikbaar.
Aangepaste oplossingen voor meerdere regio's voor veerkracht
Als u tolerantie voor meerdere regio's wilt bereiken met behulp van Application Gateway v2, moet u afzonderlijke gateways in elke gewenste regio implementeren en verkeerbeheer implementeren in verschillende regio's. U bent verantwoordelijk voor het implementeren en configureren van elk van de gateways, evenals verkeersroutering en failover. Houd rekening met de volgende punten:
Configureer consistente Application Gateway-regels en -beleidsregels in verschillende regio's. U kunt infrastructuur definiëren als code (IaC) met behulp van hulpprogramma's zoals Bicep of Terraform om uw implementaties en configuraties in verschillende regio's te vereenvoudigen.
Implementeer een wereldwijde taakverdelingsoplossing die verkeer tussen uw regionale gateways kan verzenden. De wereldwijde taakverdelingsservices in Azure zijn Azure Traffic Manager en Azure Front Door. Elke service routeert verkeer op basis van statuscontroles, geografische nabijheid of metrische prestatiegegevens. Azure Front Door biedt ook een scala aan andere mogelijkheden, waaronder DDoS-aanvalsbeveiliging (Distributed Denial of Service), WAF-mogelijkheden en geavanceerde regels en routeringsfuncties.
Overweeg buiten de gateway back-endtoepassingen en -gegevens te repliceren in verschillende regio's. Raadpleeg de betrouwbaarheidshandleidingen voor elke Azure-service om inzicht te hebben in de implementatiemethoden voor meerdere regio's.
Zie Application Gateway gebruiken met Traffic Manager voor een voorbeeldbenadering.
Backups en herstel
Application Gateway v2 is een staatloze service waarvoor geen traditionele back-up- en herstelbewerkingen nodig zijn. Alle configuratiegegevens worden opgeslagen in Resource Manager en kunnen opnieuw worden geïmplementeerd met behulp van IaC-benaderingen, zoals Bicep-bestanden of ARM-sjablonen.
Voor configuratiebeheer en herstel na noodgevallen moet u de volgende acties uitvoeren:
Definieer de configuratie van uw Application Gateway-implementatie met behulp van Bicep-bestanden of ARM-sjablonen, of exporteer de configuratie van een bestaande gateway.
Sla TLS-certificaten (Transport Layer Security) op in Azure Key Vault voor veilig beheer en replicatie.
Aangepaste configuraties, regels en beleidsregels voor document- en versiebeheer.
Implementeer geautomatiseerde implementatiepijplijnen voor consistente gatewayinrichting.
Voor de meeste oplossingen hoeft u niet uitsluitend te vertrouwen op back-ups. Gebruik in plaats daarvan de andere mogelijkheden die in deze handleiding worden beschreven om uw tolerantievereisten te ondersteunen. Back-ups beschermen echter tegen enkele risico's die andere benaderingen niet opleveren. Zie Wat zijn redundantie, replicatie en back-up? voor meer informatie.
Tolerantie voor serviceonderhoud
Application Gateway v2 voert regelmatige service-upgrades en andere onderhoudstaken uit. Om uw verwachte capaciteit tijdens een upgrade te behouden, voegt het platform automatisch extra exemplaren van uw gateway toe tijdens het upgradeproces. U moet er echter voor zorgen dat het subnet van de gateway voldoende vrije IP-adresruimte heeft om tijdelijke exemplaren te kunnen maken. Zie Hoe verwerkt Application Gateway routineonderhoud? voor meer informatie.
Diensteniveauovereenkomst
De SLA (Service Level Agreement) voor Azure-services beschrijft de verwachte beschikbaarheid van elke service en de voorwaarden waaraan uw oplossing moet voldoen om die beschikbaarheidsverwachting te bereiken. Zie SLA's voor onlineservices voor meer informatie.
Voor een gateway die in aanmerking komt voor de SLA voor beschikbaarheid van Application Gateway, moet deze voldoen aan de volgende criteria:
- Deze moet correct zijn geconfigureerd om uw HTTP-taakverdeling uit te voeren.
- Het moet zone-redundant zijn of moet worden geconfigureerd voor het gebruik van automatische schaalaanpassing.