Dela via


API-gateway i Azure API Management

GÄLLER FÖR: Alla API Management-nivåer

Den här artikeln innehåller information om rollerna och funktionerna i API Management-gatewaykomponenten och jämför de gatewayer som du kan distribuera.

Relaterad information:

Gatewayens roll

API Management-gatewayen (kallas även för dataplan eller körning) är den tjänstkomponent som ansvarar för att proxya API-begäranden, tillämpa principer och samla in telemetri.

Mer specifikt gatewayen:

  • Fungerar som en fasad för serverdelstjänster genom att acceptera API-anrop och dirigera dem till lämpliga serverdelar
  • Verifierar API-nycklar och andra autentiseringsuppgifter som JWT-token och certifikat som visas med begäranden
  • Framtvingar användningskvoter och hastighetsgränser
  • Du kan också transformera begäranden och svar enligt vad som anges i principinstruktioner
  • Om det är konfigurerat cachelagrar svar för att förbättra svarsfördröjningen och minimera belastningen på serverdelstjänster
  • Genererar loggar, mått och spårningar för övervakning, rapportering och felsökning

Kommentar

Alla begäranden till API Management-gatewayen, inklusive de som avvisas av principkonfigurationer, räknas mot konfigurerade hastighetsgränser, kvoter och faktureringsgränser om de tillämpas på tjänstnivån.

Hanterad och lokalt installerad

API Management erbjuder både hanterade och lokalt installerade gatewayer:

  • Hanterad – Den hanterade gatewayen är standardgatewaykomponenten som distribueras i Azure för varje API Management-instans på varje tjänstnivå. Med den hanterade gatewayen flödar all API-trafik via Azure oavsett var serverdelar som implementerar API:erna finns.

    Kommentar

    På grund av skillnader i den underliggande tjänstarkitekturen har de gatewayer som tillhandahålls på de olika API Management-tjänstnivåerna vissa skillnader i funktioner. Mer information finns i avsnittet Funktionsjämförelse: Hanterade gatewayer och gatewayer med egen värd.

  • Lokalt installerad – Den lokalt installerade gatewayen är en valfri, containerbaserad version av den hanterade standardgatewayen som är tillgänglig på utvalda tjänstnivåer. Det är användbart för hybrid- och multimolnscenarier där det finns ett krav på att köra gatewayerna utanför Azure i samma miljöer där API-serverdelar finns. Med den lokala gatewayen kan kunder med hybrid-IT-infrastruktur hantera API:er som finns lokalt och mellan moln från en enda API Management-tjänst i Azure.

    • Den lokalt installerade gatewayen paketeras som en Linux-baserad Docker-container och distribueras ofta till Kubernetes, inklusive till Azure Kubernetes Service och Azure Arc-aktiverade Kubernetes.

    • Varje lokalt installerad gateway är associerad med en gatewayresurs i en molnbaserad API Management-instans från vilken den tar emot konfigurationsuppdateringar och kommunicerar status.

Viktigt!

Stöd för azure API Management med egen värdbaserad gateway version 0 och version 1-containeravbildningar upphör den 1 oktober 2023, tillsammans med motsvarande Konfigurations-API v1. Använd vår migreringsguide för att använda lokalt installerad gateway v2.0.0 eller senare med Configuration API v2. Läs mer i vår utfasningsdokumentation

Funktionsjämförelse: Hanterade och lokalt installerade gatewayer

I följande tabeller jämförs funktioner som är tillgängliga i följande API Management-gatewayer:

  • Klassisk – den hanterade gatewayen som är tillgänglig på tjänstnivåerna Developer, Basic, Standard och Premium (tidigare grupperad som dedikerade nivåer)
  • V2 – den hanterade gatewayen som är tillgänglig på nivåerna Basic v2 och Standard v2
  • Förbrukning – den hanterade gateway som är tillgänglig på förbrukningsnivån
  • Lokalt installerad – den valfria gatewayen med egen värd som är tillgänglig på utvalda tjänstnivåer

Kommentar

Infrastruktur

Funktionsstöd Klassisk V2 Förbrukning Lokalt installerad
Anpassade domäner ✔️ ✔️ ✔️ ✔️
Inbyggd cache ✔️ ✔️
Extern Redis-kompatibel cache ✔️ ✔️ ✔️ ✔️
Virtuell nätverksinmatning Utvecklare, Premium ✔️1,2
Inkommande privata slutpunkter Utvecklare, Basic, Standard, Premium
Integrering av utgående virtuellt nätverk Standard v2
Tillgänglighetszoner Premium ✔️1
Distribution i flera regioner Premium ✔️1
CA-rotcertifikat för certifikatverifiering ✔️ ✔️ ✔️3
CA-rotcertifikat för certifikatverifiering ✔️ ✔️ ✔️3
Certifikat för hanterad domän Utvecklare, Basic, Standard, Premium ✔️
TLS-inställningar ✔️ ✔️ ✔️ ✔️
HTTP/2 (klient-till-gateway) ✔️4 ✔️4 ✔️
HTTP/2 (gateway-till-serverdel) ✔️
API-hotidentifiering med Defender för API:er ✔️ ✔️

1 Beror på hur gatewayen distribueras, men är kundens ansvar.
2 Anslut ivity to the self-hosted gateway v2 configuration endpoint requires DNS resolution of the endpoint hostname.2 Anslut ivity to the self-hosted gateway v2 configuration endpoint requires DNS resolution of the endpoint hostname.
3CA-rotcertifikat för lokalt installerad gateway hanteras separat per gateway
4 Klientprotokollet måste vara aktiverat.

API:er för serverdel

Funktionsstöd Klassisk V2 Förbrukning Lokalt installerad
OpenAPI-specifikation ✔️ ✔️ ✔️ ✔️
WSDL-specifikation ✔️ ✔️ ✔️ ✔️
WADL-specifikation ✔️ ✔️ ✔️ ✔️
Logikapp ✔️ ✔️ ✔️ ✔️
App Service ✔️ ✔️ ✔️ ✔️
Funktionsapp ✔️ ✔️ ✔️ ✔️
Containerapp ✔️ ✔️ ✔️ ✔️
Service Fabric Utvecklare, Premium
GenomströmningsgrafQL ✔️ ✔️ ✔️ ✔️
Syntetisk GraphQL ✔️ ✔️ ✔️1 ✔️1
Direktwebbsocket ✔️ ✔️ ✔️
Direkt gRPC ✔️
OData ✔️ ✔️ ✔️ ✔️
Azure OpenAI ✔️ ✔️ ✔️ ✔️
Kretsbrytare i serverdelen ✔️ ✔️ ✔️
Belastningsutjämning av serverdelspool ✔️ ✔️ ✔️ ✔️

1 Syntetiska GraphQL-prenumerationer (förhandsversion) stöds inte.

Principer

Hanterade och lokalt installerade gatewayer stöder alla tillgängliga principer i principdefinitioner med följande undantag.

Funktionsstöd Klassisk V2 Förbrukning Lokalt installerad1
Dapr-integrering ✔️
GraphQL-matchare och GraphQL-validering ✔️ ✔️ ✔️
Hämta auktoriseringskontext ✔️ ✔️ ✔️
Kvot- och hastighetsgräns ✔️ ✔️2 ✔️3 ✔️4

1 Konfigurerade principer som inte stöds av den lokala gatewayen hoppas över under principkörningen.
2 Kvoten efter nyckelprincip är inte tillgänglig på v2-nivåerna.
3 Hastighetsgränsen efter nyckel och kvot efter nyckelprinciper är inte tillgängliga på förbrukningsnivån.
4 Hastighetsgränsantal i en lokalt installerad gateway kan konfigureras för att synkronisera lokalt (bland gatewayinstanser mellan klusternoder), till exempel via Helm-diagramdistribution för Kubernetes eller med hjälp av Distributionsmallar för Azure-portalen. Frekvensgränsantal synkroniseras dock inte med andra gatewayresurser som konfigurerats i API Management-instansen, inklusive den hanterade gatewayen i molnet. Läs mer

Övervakning

Mer information om övervakningsalternativ finns i Observerbarhet i Azure API Management.

Funktionsstöd Klassisk V2 Förbrukning Lokalt installerad
API-analys ✔️ ✔️1
Application Insights ✔️ ✔️ ✔️ ✔️
Logga via Event Hubs ✔️ ✔️ ✔️ ✔️
Mått i Azure Monitor ✔️ ✔️ ✔️ ✔️
OpenTelemetry Collector ✔️
Begära loggar i Azure Monitor och Log Analytics ✔️ ✔️ 2
Lokala mått och loggar ✔️
Spårning av begäranden ✔️ 3 ✔️ ✔️

1 V2-nivåerna stöder Azure Monitor-baserad analys.
2 Den lokalt installerade gatewayen skickar för närvarande inte resursloggar (diagnostikloggar) till Azure Monitor. Du kan också skicka mått till Azure Monitor eller konfigurera och spara loggar lokalt där den lokala gatewayen distribueras.
3 Spårning är för närvarande inte tillgänglig på v2-nivåerna.

Autentisering och auktorisering

Hanterade och lokalt installerade gatewayer stöder alla tillgängliga ALTERNATIV för API-autentisering och auktorisering med följande undantag.

Funktionsstöd Klassisk V2 Förbrukning Lokalt installerad
Autentiseringshanteraren ✔️ ✔️ ✔️

Gateway-dataflöde och skalning

Viktigt!

Dataflödet påverkas av antalet och hastigheten för samtidiga klientanslutningar, typen och antalet konfigurerade principer, nyttolaststorlekar, serverdels-API-prestanda och andra faktorer. Gateway-dataflödet med egen värd är också beroende av beräkningskapaciteten (CPU och minne) för värden där den körs. Utför gatewaybelastningstestning med förväntade produktionsförhållanden för att fastställa förväntat dataflöde korrekt.

Hanterad gateway

Information om uppskattat maximalt gateway-dataflöde på API Management-tjänstnivåerna finns i API Management-priser.

Viktigt!

Dataflödessiffror presenteras endast för information och får inte användas för kapacitets- och budgetplanering. Mer information finns i API Management-priser .

  • Klassiska nivåer

    • Skala gatewaykapacitet genom att lägga till och ta bort skalningsenheter eller uppgradera tjänstnivån. (Skalning är inte tillgängligt på utvecklarnivån.)
    • På nivåerna Basic, Standard och Premium kan du välja att konfigurera autoskalning av Azure Monitor.
    • På Premium-nivån kan du lägga till och distribuera gatewaykapacitet i flera regioner.
  • v2-nivåer

    • Skala gatewaykapacitet genom att lägga till och ta bort skalningsenheter eller uppgradera tjänstnivån.
  • Förbrukningsnivå

    • API Management-instanser på nivån Förbrukning skalas automatiskt baserat på trafiken.

Gateway med egen värd