Så distribuerar du en Azure API Management-tjänstinstans till flera Azure-regioner
Azure API Management har stöd för distribution i flera regioner, vilket gör det möjligt för API-utgivare att distribuera en enda Azure API Management-tjänst över val av antal Azure-regioner som stöds. Funktionen för flera regioner hjälper till att minska svarstiden för förfrågningar som uppfattas av geografiskt distribuerade API-konsumenter och förbättrar tjänstens tillgänglighet om en region går offline.
En ny Azure API Management-tjänst innehåller inledningsvis bara en enhet i en enda Azure-region, den primära regionen. Ytterligare enheter kan läggas till i de primära eller sekundära regionerna. En API Management gateway-komponent distribueras till varje vald primär och sekundär region. Inkommande API-begäranden dirigeras automatiskt till den närmaste regionen. Om en region går offline dirigeras API-begäranden automatiskt runt den misslyckade regionen till nästa närmaste gateway.
Anteckning
Endast gatewaykomponenten i API Management distribueras till alla regioner. Tjänsthanteringskomponenten och utvecklarportalen finns endast i den primära regionen. I händelse av avbrott i den primära regionen kommer åtkomsten till utvecklarportalen och möjligheten att ändra konfiguration (t.ex. att lägga till API:er, tillämpa principer) att försämras tills den primära regionen är online igen. När den primära regionen är offline fortsätter tillgängliga sekundära regioner att betjäna API-trafiken med hjälp av den senaste konfigurationen som är tillgänglig för dem. Du kan också aktivera zonredundans för att förbättra tillgängligheten och återhämtningen för de primära eller sekundära regionerna.
Viktigt
Funktionen för att möjliggöra lagring av kunddata i en enda region är för närvarande endast tillgänglig i Sydostasien Region (Singapore) för Asien och stillahavsområdet Geo. För alla andra regioner lagras kunddata i Geo.
Tillgänglighet
Viktigt
Den här funktionen är endast tillgänglig på Premium -nivån för API Management.
Förutsättningar
- Om du ännu inte har skapat en API Management-tjänstinstans kan du gå till Skapa en API Management-tjänstinstans. Välj Premium tjänstnivå.
- Om din API Management-instans distribueras i ett virtuellt nätverk måstedu konfigurera ett virtuellt nätverk, ett undernät och en offentlig IP-adress på den plats som du planerar att lägga till.
Distribuera API Management-tjänst till en ytterligare plats
- I Azure Portal du till din API Management och väljer Platser i menyn.
- Välj + Lägg till i det översta fältet.
- Välj platsen i listrutan.
- Välj antalet skalningsenheter på platsen.
- Du kan också aktivera tillgänglighetszoner.
- Om instansen API Management distribueras i ett virtuellt nätverkkonfigurerar du inställningar för virtuellt nätverk på platsen. Välj ett befintligt virtuellt nätverk, undernät och en offentlig IP-adress som är tillgängliga på platsen.
- Välj Lägg till för att bekräfta.
- Upprepa den här processen tills du konfigurerar alla platser.
- Välj Spara i det översta fältet för att starta distributionsprocessen.
Ta bort en API Management-tjänstplats
- I Azure Portal navigerar du till API Management-tjänsten och klickar på posten Platser i menyn.
- För den plats som du vill ta bort öppnar du snabbmenyn med knappen ... till höger i tabellen. Välj alternativet Ta bort.
- Bekräfta borttagningen och klicka på Spara för att tillämpa ändringarna.
Dirigera API-anrop till regionala backend-tjänster
Azure API Management har bara en url för backend-tjänsten. Även om det finns Azure API Management-instanser i olika regioner vidarebefordrar API-gatewayen fortfarande begäranden till samma backend-tjänst, som endast distribueras i en region. I det här fallet kommer prestandavinsten endast från svar som cachelagras i Azure API Management i en region som är specifik för begäran, men att kontakta backend över hela världen kan fortfarande orsaka lång svarstid.
Om du vill utnyttja den geografiska distributionen av ditt system fullt ut bör du ha backend-tjänster distribuerade i samma regioner som Azure API Management instanser. Sedan kan du med @(context.Deployment.Region) hjälp av principer och egenskap dirigera trafiken till lokala instanser av din backend.
Gå till din Azure API Management instans och klicka på API:er på den vänstra menyn.
Välj önskat API.
Klicka på Kodredigeraren i listrutan med pilen i Inkommande bearbetning.

Använd i
set-backendkombination medchoosevillkorliga principer för att skapa en korrekt routningsprincip<inbound> </inbound>i avsnittet i filen.XML-filen nedan skulle till exempel fungera för USA, västra och Asien, östra regioner:
<policies> <inbound> <base /> <choose> <when condition="@("West US".Equals(context.Deployment.Region, StringComparison.OrdinalIgnoreCase))"> <set-backend-service base-url="http://contoso-us.com/" /> </when> <when condition="@("East Asia".Equals(context.Deployment.Region, StringComparison.OrdinalIgnoreCase))"> <set-backend-service base-url="http://contoso-asia.com/" /> </when> <otherwise> <set-backend-service base-url="http://contoso-other.com/" /> </otherwise> </choose> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies>
Tips
Du kan också använda servertjänster med hjälp Azure Traffic Manager, dirigera API-anropen till Traffic Manager och låta det lösa routningen automatiskt.
Använda anpassad routning för API Management regionala gatewayer
API Management dirigerar begäranden till en regional gateway baserat på den lägsta svarstiden. Även om det inte går att åsidosätta den här inställningen i API Management kan du använda dina egna Traffic Manager med anpassade routningsregler.
- Skapa en egen Azure Traffic Manager.
- Om du använder en anpassad domän använder du den med Traffic Manager i stället för API Management tjänsten.
- Konfigurera de API Management regionala slutpunkterna i Traffic Manager. De regionala slutpunkterna följer URL-mönstret
https://<service-name>-<region>-01.regional.azure-api.netför , till exempelhttps://contoso-westus2-01.regional.azure-api.net. - Konfigurera de API Management regionala statusslutpunkterna i Traffic Manager. De regionala statusslutpunkterna följer URL-mönstret
https://<service-name>-<region>-01.regional.azure-api.net/status-0123456789abcdefför , till exempelhttps://contoso-westus2-01.regional.azure-api.net/status-0123456789abcdef. - Ange routningsmetoden för Traffic Manager.