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.
VAN TOEPASSING OP: Premium
Azure API Management ondersteunt implementatie in meerdere regio's, waardoor API-uitgevers regionale API-gateways kunnen toevoegen aan een bestaand API Management-exemplaar in een of meer ondersteunde Azure-regio's. Implementatie in meerdere regio's helpt bij het verminderen van de latentie van aanvragen die worden waargenomen door geografisch gedistribueerde API-gebruikers en verbetert de beschikbaarheid van de service als één regio offline gaat.
Wanneer u een regio toevoegt, configureert u het volgende:
Beschikbaarheidszones, als deze regio dit ondersteunt. Api Management configureert standaard automatisch beschikbaarheidszones voor de toegevoegde regio. Dit wordt aanbevolen. U kunt ook handmatig beschikbaarheidszones configureren voor de toegevoegde regio.
Instellingen voor virtuele netwerken in de toegevoegde regio, als netwerken zijn geconfigureerd in de bestaande regio of regio's.
Belangrijk
De functie om het opslaan van klantgegevens in één regio in te schakelen is momenteel alleen beschikbaar in de regio Azië - zuidoost (Singapore) van het geografisch gebied Azië en Stille Oceaan. Voor alle andere regio's worden klantgegevens opgeslagen in Geo.
Belangrijk
Wijzigingen in de infrastructuur van uw API Management-service (zoals het configureren van aangepaste domeinen, het toevoegen van CA-certificaten, schalen, configuratie van virtuele netwerken, wijzigingen in de beschikbaarheidszone en regio-toevoegingen) kunnen 15 minuten of langer duren, afhankelijk van de servicelaag en de grootte van de implementatie. Verwacht langere tijden voor een exemplaar met een groter aantal schaaleenheden of configuratie met meerdere regio's. Rolling wijzigingen in API Management worden zorgvuldig uitgevoerd om de capaciteit en beschikbaarheid te behouden.
Terwijl de service wordt bijgewerkt, kunnen andere wijzigingen in de serviceinfrastructuur niet worden aangebracht. U kunt echter API's, producten, beleid en gebruikersinstellingen configureren. De service ondervindt geen downtime van de gateway en API Management blijft zonder onderbreking service-API-aanvragen uitvoeren (behalve in de developer-laag).
Over implementatie in meerdere regio's
Alleen het gatewayonderdeel van uw API Management-exemplaar wordt gerepliceerd naar meerdere regio's. Het beheervlak en de ontwikkelaarsportal van het exemplaar blijven alleen gehost in de primaire regio, de regio waar u de service oorspronkelijk hebt geïmplementeerd.
Als u een secundaire locatie wilt configureren voor uw API Management-exemplaar wanneer deze wordt geïmplementeerd (geïnjecteerd) in een virtueel netwerk, moet de VNet- en subnetregio overeenkomen met de secundaire locatie die u configureert. Als u de beschikbaarheidszone toevoegt, verwijdert of inschakelt in de primaire regio, of als u het subnet van de primaire regio wijzigt, wordt het VIP-adres van uw API Management-exemplaar gewijzigd. Zie IP-adressen van de Azure API Management-service voor meer informatie. Als u echter een secundaire regio toevoegt, verandert het VIP van de primaire regio niet omdat elke regio een eigen privé-VIP heeft.
Gateway-configuraties zoals API's en beleidsdefinities worden regelmatig gesynchroniseerd tussen de primaire en secundaire regio's die u toevoegt. Het doorgeven van updates aan de regionale gateways duurt normaal gesproken minder dan 10 seconden. Implementatie in meerdere regio's biedt beschikbaarheid van de API-gateway in meer dan één regio en biedt servicebeschikbaarheid als één regio offline gaat.
Wanneer API Management openbare HTTP-aanvragen ontvangt naar het Traffic Manager-eindpunt (van toepassing op het externe VNet en niet-netwerkmodi van API Management), wordt verkeer doorgestuurd naar een regionale gateway op basis van de laagste latentie, wat de latentie kan verminderen die wordt ervaren door geografisch gedistribueerde API-consumenten. In de interne VNet-modus moeten klanten hun eigen oplossing configureren om verkeer over de regionale gateways te routeren en te verdelen. Zie Netwerkoverwegingen voor meer informatie.
De gateway in elke regio (inclusief de primaire regio) heeft een regionale DNS-naam die het URL-patroon volgt,
https://<service-name>-<region>-01.regional.azure-api.net
bijvoorbeeldhttps://contoso-westus2-01.regional.azure-api.net
.Als een regio offline gaat, worden API-aanvragen automatisch gerouteerd rond de mislukte regio naar de dichtstbijzijnde gateway.
Als de primaire regio offline gaat, zijn het beheervlak API Management en de ontwikkelaarsportal niet meer beschikbaar, maar secundaire regio's blijven API-aanvragen verwerken met behulp van de meest recente gateway-configuratie.
Indien geconfigureerd, tellen de frequentielimiet en frequentielimiet-op-sleutel beleidsregels oproepen afzonderlijk bij elke regionale gateway in de implementatie. De beleidsregels aggregeren niet alle oproepgegevens voor het exemplaar. Op dezelfde manier tellen de azure-openai-token-limit en llm-token-limit beleidsregels het tokengebruik afzonderlijk bij elke regionale gateway in de implementatie.
Vereisten
Begrijp alle vereisten en overwegingen voor het inschakelen van implementatie met meerdere regio's in API Management grondig.
Zie Een API Management-service-exemplaar maken als u nog geen API Management-service-exemplaar hebt gemaakt. Selecteer de Premium-servicelaag.
Als uw API Management-exemplaar is geïmplementeerd in een virtueel netwerk, moet u ervoor zorgen dat u een virtueel netwerk en subnet instelt op de locatie die u wilt toevoegen en binnen hetzelfde abonnement. Zie vereisten voor virtuele netwerken.
API Management-service implementeren in een extra regio
- Navigeer in Azure Portal naar uw API Management-service en selecteer Locaties in het linkermenu.
- Selecteer + Toevoegen in de bovenste balk.
- Selecteer de toegevoegde locatie in de vervolgkeuzelijst.
- Selecteer het aantal schaaleenheden op de locatie.
- Als de regio beschikbaarheidszones ondersteunt, laat u de instelling Automatisch staan (aanbevolen) of selecteert u desgewenst een of meer zones. Als u specifieke zones selecteert, moet het aantal eenheden dat u selecteert gelijkmatig over de beschikbaarheidszones verdelen. Als u bijvoorbeeld drie eenheden selecteert, moet u drie zones selecteren, zodat elke zone één eenheid host.
- Als het API Management-exemplaar is geïmplementeerd in een virtueel netwerk, configureert u de instellingen van het virtuele netwerk op de locatie, waaronder het virtuele netwerk, het subnet en het openbare IP-adres.
- Selecteer Toevoegen om te bevestigen.
- Herhaal dit proces totdat u alle locaties configureert.
- Selecteer Opslaan in de bovenste balk om het implementatieproces te starten.
Een API Management-serviceregio verwijderen
- Navigeer in Azure Portal naar uw API Management-service en selecteer Locaties in het linkermenu.
- Voor de locatie die u wilt verwijderen, selecteert u het contextmenu met behulp van de knop ... aan de rechterkant van de tabel. Selecteer Verwijderen.
- Bevestig de verwijdering en selecteer Opslaan om de wijzigingen toe te passen.
API-aanroepen routeren naar regionale back-endservices
Standaard routeert elke API aanvragen naar één BACK-endservice-URL. Zelfs als u API Management-gateways in verschillende regio's configureert, stuurt de API-gateway nog steeds aanvragen door naar dezelfde back-endservice, die in slechts één regio wordt geïmplementeerd. In dit geval zijn verbeterde prestaties alleen afkomstig van antwoorden die in de cache zijn opgeslagen in API Management in een regio die specifiek is voor de aanvraag. Contact opnemen met de back-end over de hele wereld kan nog steeds een hoge latentie veroorzaken.
Als u wilt profiteren van de geografische distributie van uw systeem, moet u back-endservices implementeren in dezelfde regio's als API Management-exemplaren. Vervolgens kunt u met behulp van beleidsregels en de @(context.Deployment.Region)
eigenschap het verkeer doorsturen naar lokale exemplaren van uw back-end.
Ga naar uw API Management-exemplaar en selecteer API's in het linkermenu.
Selecteer de gewenste API.
Selecteer op het tabblad Ontwerpen in de sectie Binnenkomende verwerkingde optie Code-editor.
Gebruik de
set-backend
combinatie met voorwaardelijkchoose
beleid om een correct routeringsbeleid te maken in de<inbound> </inbound>
sectie van het bestand.Het volgende XML-bestand werkt bijvoorbeeld voor regio's VS - west en Azië - oost:
<policies> <inbound> <base /> <choose> <when condition="@("West US".Equals(context.Deployment.Region, StringComparison.OrdinalIgnoreCase))"> <set-backend-service base-url="http://contoso-backend-us.com/" /> </when> <when condition="@("East Asia".Equals(context.Deployment.Region, StringComparison.OrdinalIgnoreCase))"> <set-backend-service base-url="http://contoso-backend-asia.com/" /> </when> <otherwise> <set-backend-service base-url="http://contoso-backend-other.com/" /> </otherwise> </choose> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies>
Traffic Manager gebruiken voor routering naar regionale back-ends
U kunt uw back-endservices ook fronteren met Azure Traffic Manager, de API-aanroepen naar Traffic Manager sturen en de routering automatisch laten oplossen.
Voor verkeersdistributie en failover raden we u aan Traffic Manager te gebruiken met de geografische routeringsmethode. Het wordt afgeraden Traffic Manager te gebruiken met de gewogen routeringsmethode met API Management-back-ends.
Voor verkeersbeheer tijdens onderhoudsbewerkingen wordt u aangeraden de routeringsmethode Prioriteit te gebruiken.
Aangepaste routering gebruiken voor regionale API Management-gateways
API Management stuurt de aanvragen naar een regionale gateway op basis van de laagste latentie. Hoewel het niet mogelijk is om deze instelling in API Management te overschrijven, kunt u uw eigen Traffic Manager gebruiken met aangepaste routeringsregels.
- Maak uw eigen Traffic Manager.
- Als u een aangepast domein gebruikt, gebruikt u dit met Traffic Manager in plaats van de API Management-service.
-
Configureer de regionale API Management-eindpunten in Traffic Manager. De regionale eindpunten volgen het URL-patroon van
https://<service-name>-<region>-01.regional.azure-api.net
bijvoorbeeldhttps://contoso-westus2-01.regional.azure-api.net
. -
Configureer de regionale statuseindpunten van API Management in Traffic Manager. De regionale statuseindpunten volgen bijvoorbeeld het URL-patroon van
https://<service-name>-<region>-01.regional.azure-api.net/status-0123456789abcdef
https://contoso-westus2-01.regional.azure-api.net/status-0123456789abcdef
. - Geef de routeringsmethode van Traffic Manager op.
Routering naar een regionale gateway uitschakelen
Onder sommige omstandigheden moet u mogelijk de routering naar een van de regionale gateways tijdelijk uitschakelen. Voorbeeld:
- Nadat u een nieuwe regio hebt toegevoegd, kunt u deze uitgeschakeld houden tijdens het configureren en testen van de regionale back-endservice
- Tijdens regelmatig back-endonderhoud in een regio
- Verkeer omleiden naar andere regio's tijdens een geplande noodherstelanalyse die een niet-beschikbare regio simuleert of tijdens een regionale storing
Als u routering naar een regionale gateway in uw API Management-exemplaar wilt uitschakelen, werkt u de eigenschapswaarde van disableGateway
de gateway bij naar true
. U kunt de waarde instellen met behulp van de REST API voor de service Maken of bijwerken , de opdracht az apim update in de Azure CLI, de set-azapimanagement Azure PowerShell-cmdlet of andere Azure-hulpprogramma's.
Notitie
U kunt routering naar een regionale gateway alleen uitschakelen wanneer u standaardroutering in API Management gebruikt, niet een aangepaste routeringsoplossing.
Een regionale gateway uitschakelen met behulp van de Azure CLI:
Gebruik de opdracht az apim show om de locaties, gatewaystatus en regionale URL's weer te geven die zijn geconfigureerd voor het API Management-exemplaar.
az apim show --name contoso --resource-group apim-hello-world-resource \ --query "additionalLocations[].{Location:location,Disabled:disableGateway,Url:gatewayRegionalUrl}" \ --output table
Voorbeelduitvoer:
Location Disabled Url ---------- ---------- ------------------------------------------------------------ West US 2 True https://contoso-westus2-01.regional.azure-api.net West Europe True https://contoso-westeurope-01.regional.azure-api.net
Gebruik de opdracht az apim update om de gateway uit te schakelen op een beschikbare locatie, zoals West US 2.
az apim update --name contoso --resource-group apim-hello-world-resource \ --set additionalLocations[location="West US 2"].disableGateway=true
De update kan enkele minuten duren.
Controleer of verkeer dat is omgeleid naar de url van de regionale gateway, wordt omgeleid naar een andere regio.
Als u routering naar de regionale gateway wilt herstellen, stelt u de waarde van disableGateway
in op false
.
Virtueel netwerk
Deze sectie bevat overwegingen voor implementaties in meerdere regio's wanneer het API Management-exemplaar wordt geïnjecteerd in een virtueel netwerk.
- Configureer elk regionaal netwerk onafhankelijk. De connectiviteitsvereisten, zoals vereiste regels voor netwerkbeveiligingsgroepen voor een virtueel netwerk in een toegevoegde regio, zijn over het algemeen hetzelfde als de vereisten voor een netwerk in de primaire regio.
- Virtuele netwerken in de verschillende regio's hoeven niet te worden gekoppeld.
Belangrijk
Wanneer u uw API Management-exemplaar configureert voor het gebruik van de modus intern virtueel netwerk, moet elke regionale gateway ook uitgaande connectiviteit hebben op poort 1433 naar de Azure SQL-database die is geconfigureerd voor uw API Management-exemplaar, dat zich alleen in de primaire regio bevindt. Zorg ervoor dat u connectiviteit met de FQDN (Fully Qualified Domain Name) of het IP-adres van deze Azure SQL-database toestaat in routes of firewallregels die u configureert voor netwerken in uw secundaire regio's; het Azure SQL-service-eindpunt kan in dit scenario niet worden gebruikt. Als u de naam van de Azure SQL-database in de primaire regio wilt vinden, gaat u naar de pagina Netwerkstatus> van uw API Management-exemplaar in de portal.
IP-adressen
Er wordt een openbaar virtueel IP-adres gemaakt in elke regio die wordt toegevoegd aan een virtueel netwerk. Voor virtuele netwerken in de externe modus of interne modus wordt dit openbare IP-adres gebruikt voor beheerverkeer op poort
3443
.Externe VNet-modus: De openbare IP-adressen zijn ook vereist om openbaar HTTP-verkeer naar de API-gateways te routeren.
Interne VNet-modus: Er wordt ook een privé-IP-adres gemaakt in elke regio die wordt toegevoegd met een virtueel netwerk. Gebruik deze adressen om in het netwerk verbinding te maken met de API Management-eindpunten in de primaire en secundaire regio's.
Routering
Externe VNet-modus: Routering van openbaar HTTP-verkeer naar de regionale gateways wordt automatisch verwerkt, op dezelfde manier als voor een niet-netwerkexemplaren van API Management.
Interne VNet-modus: Privé-HTTP-verkeer wordt standaard niet naar de regionale gateways gerouteerd of voor load balancing aangeboden. Gebruikers zijn eigenaar van de routering en zijn verantwoordelijk voor het meenemen van hun eigen oplossing voor het beheren van routering en privétaakverdeling in meerdere regio's.
Verwante inhoud
Meer informatie over betrouwbaarheid in API Management
Meer informatie over het inschakelen van ondersteuning voor beschikbaarheidszones voor een API Management-exemplaar.
Zie voor meer informatie over virtuele netwerken en API Management: