Brama interfejsu API w usłudze Azure API Management

DOTYCZY: Wszystkie warstwy usługi API Management

Ten artykuł zawiera informacje o rolach i funkcjach składnika bramy usługi API Management oraz porównanie bram, które można wdrożyć.

Powiązane informacje:

Rola bramy

Brama usługi API Management (nazywana również płaszczyzną danych lub środowiskiem uruchomieniowym) jest składnikiem usługi odpowiedzialnym za żądania interfejsu API proxy, stosowanie zasad i zbieranie danych telemetrycznych.

W szczególności brama:

Uwaga

Wszystkie żądania do bramy usługi API Management, w tym żądania odrzucone przez konfiguracje zasad, wliczają się do skonfigurowanych limitów szybkości, limitów przydziału i limitów rozliczeń, jeśli są stosowane w warstwie usługi.

Zarządzane i self-hosted

Usługa API Management oferuje zarówno bramy zarządzane, jak i własne:

  • Zarządzane — brama zarządzana jest domyślnym składnikiem bramy wdrożonym na platformie Azure dla każdego wystąpienia usługi API Management w każdej warstwie usługi. W przypadku bramy zarządzanej cały ruch interfejsu API przepływa przez platformę Azure niezależnie od tego, gdzie są hostowane zaplecza implementowane interfejsy API.

    Uwaga

    Ze względu na różnice w podstawowej architekturze usługi bramy dostępne w różnych warstwach usługi API Management mają pewne różnice w możliwościach. Aby uzyskać szczegółowe informacje, zobacz sekcję Porównanie funkcji: Bramy zarządzane i self-hosted.

  • Self-hosted — brama self-hosted to opcjonalna, konteneryzowana wersja domyślnej bramy zarządzanej, która jest dostępna w wybranych warstwach usług. Jest to przydatne w scenariuszach hybrydowych i wielochmurowych, w których wymagane jest uruchamianie bram poza platformą Azure w tych samych środowiskach, w których są hostowane zaplecza interfejsu API. Brama hostowana samodzielnie umożliwia klientom korzystanie z hybrydowej infrastruktury IT do zarządzania interfejsami API hostowanymi lokalnie i w różnych chmurach z jednej usługi API Management na platformie Azure.

    • Brama hostowana samodzielnie jest spakowana jako kontener platformy Docker oparty na systemie Linux i jest często wdrażana na platformie Kubernetes, w tym w usługach Azure Kubernetes Service i Kubernetes z obsługą usługi Azure Arc.

    • Każda brama hostowana samodzielnie jest skojarzona z zasobem bramy w wystąpieniu usługi API Management opartym na chmurze, z którego odbiera aktualizacje konfiguracji i komunikuje stan.

Ważne

Obsługa samoobsługowej bramy usługi Azure API Management w wersji 0 i wersji 1 obrazów kontenerów kończy się 1 października 2023 r. wraz z odpowiednim interfejsem API konfiguracji w wersji 1. Skorzystaj z naszego przewodnika migracji , aby użyć własnej bramy w wersji 2.0.0 lub nowszej z interfejsem API konfiguracji w wersji 2. Dowiedz się więcej w naszej dokumentacji dotyczącej wycofywania

Porównanie funkcji: bramy zarządzane i własne

Poniższe tabele porównują funkcje dostępne w następujących bramach usługi API Management:

  • Klasyczny — brama zarządzana dostępna w warstwach usługi Developer, Basic, Standard i Premium (wcześniej pogrupowana jako warstwy dedykowane )
  • Wersja 2 — brama zarządzana dostępna w warstwach Podstawowa w wersji 2 i Standardowa w wersji 2
  • Użycie — brama zarządzana dostępna w warstwie Zużycie
  • Self-hosted — opcjonalna brama self-hosted dostępna w wybranych warstwach usług

Uwaga

  • Niektóre funkcje zarządzanych i własnych bram są obsługiwane tylko w niektórych warstwach usług lub w niektórych środowiskach wdrażania dla własnych bram.
  • W przypadku bieżących obsługiwanych funkcji własnej bramy upewnij się, że uaktualniono do najnowszej wersji głównej obrazu kontenera bramy hostowanej samodzielnie.
  • Zobacz również ograniczenia bramy hostowanej samodzielnie.

Infrastruktura

Obsługa funkcji Klasyczny Wersja 2 Zużycie Samodzielne hostowanie
Niestandardowe domeny ✔️ ✔️ ✔️ ✔️
Wbudowana pamięć podręczna ✔️ ✔️
Zewnętrzna pamięć podręczna zgodna z usługą Redis ✔️ ✔️ ✔️ ✔️
Wstrzykiwanie sieci wirtualnej Deweloper, Premium ✔️1,2
Przychodzące prywatne punkty końcowe Developer, Basic, Standard, Premium
Integracja wychodzącej sieci wirtualnej Standardowa, wersja 2
Strefy dostępności Premium ✔️1
Wdrażanie w wielu regionach Premium ✔️1
Certyfikaty główne urzędu certyfikacji na potrzeby weryfikacji certyfikatu ✔️ ✔️ ✔️3
Certyfikaty główne urzędu certyfikacji na potrzeby weryfikacji certyfikatu ✔️ ✔️ ✔️3
Certyfikaty domeny zarządzanej Developer, Basic, Standard, Premium ✔️
Ustawienia protokołu TLS ✔️ ✔️ ✔️ ✔️
HTTP/2 (klient-brama) ✔️4 ✔️4 ✔️
HTTP/2 (Brama do zaplecza) ✔️
Wykrywanie zagrożeń interfejsu API za pomocą interfejsów API usługi Defender dla interfejsów API ✔️ ✔️

1 Zależy od sposobu wdrażania bramy, ale odpowiada za to klient.
2 Połączenie ivity do punktu końcowego konfiguracji własnej bramy w wersji 2 wymaga rozpoznawania DNS nazwy hosta punktu końcowego.
3certyfikaty główne urzędu certyfikacji dla własnej bramy są zarządzane oddzielnie dla bramy
4 Należy włączyć protokół klienta.

Interfejsy API zaplecza

Obsługa funkcji Klasyczny Wersja 2 Zużycie Samodzielne hostowanie
Specyfikacja interfejsu OpenAPI ✔️ ✔️ ✔️ ✔️
Specyfikacja WSDL ✔️ ✔️ ✔️ ✔️
Specyfikacja WADL ✔️ ✔️ ✔️ ✔️
Aplikacja logiki ✔️ ✔️ ✔️ ✔️
App Service ✔️ ✔️ ✔️ ✔️
Aplikacja funkcji ✔️ ✔️ ✔️ ✔️
Aplikacja kontenera ✔️ ✔️ ✔️ ✔️
Service Fabric Deweloper, Premium
Pass-through GraphQL ✔️ ✔️ ✔️ ✔️
Syntetyczny grafQL ✔️ ✔️ ✔️1 ✔️1
Przekazywanie protokołu WebSocket ✔️ ✔️ ✔️
Przekazywanie gRPC (wersja zapoznawcza) ✔️
OData (wersja zapoznawcza) ✔️ ✔️ ✔️ ✔️
Pass-through GraphQL ✔️ ✔️ ✔️ ✔️
Azure OpenAI ✔️ ✔️ ✔️ ✔️
Wyłącznik w zapleczu (wersja zapoznawcza) ✔️ ✔️ ✔️
Pula zaplecza ze zrównoważonym obciążeniem (wersja zapoznawcza) ✔️ ✔️ ✔️ ✔️

1 Syntetyczne subskrypcje GraphQL (wersja zapoznawcza) nie są obsługiwane.

Zasady

Bramy zarządzane i self-hosted obsługują wszystkie dostępne zasady w definicjach zasad z następującymi wyjątkami.

Obsługa funkcji Klasyczny Wersja 2 Zużycie Self-hosted1
Integracja języka Dapr ✔️
Narzędzia rozpoznawania języka GraphQL i walidacja języka GraphQL ✔️ ✔️ ✔️
Uzyskiwanie kontekstu autoryzacji ✔️ ✔️ ✔️
Limit przydziału i szybkości ✔️ ✔️2 ✔️3 ✔️4

1 Skonfigurowane zasady, które nie są obsługiwane przez bramę self-hosted, są pomijane podczas wykonywania zasad.
2 Zasady przydziału według klucza nie są dostępne w warstwach 2.
2 Limit szybkości według klucza i limitu przydziału według zasad klucza nie jest dostępny w warstwie Zużycie.
3 Liczby limitów szybkości w bramie hostowanej samodzielnie można skonfigurować do synchronizowania lokalnie (między wystąpieniami bramy między węzłami klastra), na przykład za pomocą wdrożenia wykresu helm dla platformy Kubernetes lub szablonów wdrażania witryny Azure Portal. Jednak liczby limitów szybkości nie są synchronizowane z innymi zasobami bramy skonfigurowanymi w wystąpieniu usługi API Management, w tym z bramą zarządzaną w chmurze. Dowiedz się więcej

Monitorowanie

Aby uzyskać szczegółowe informacje na temat opcji monitorowania, zobacz Obserwowanie w usłudze Azure API Management.

Obsługa funkcji Klasyczny Wersja 2 Zużycie Samodzielne hostowanie
Analiza interfejsu API ✔️ ✔️1
Application Insights ✔️ ✔️ ✔️ ✔️
Rejestrowanie za pośrednictwem usługi Event Hubs ✔️ ✔️ ✔️ ✔️
Metryki w usłudze Azure Monitor ✔️ ✔️ ✔️ ✔️
OpenTelemetry Collector ✔️
Dzienniki żądań w usługach Azure Monitor i Log Analytics ✔️ ✔️ 2
Lokalne metryki i dzienniki ✔️
Śledzenie żądań ✔️ 3 ✔️ ✔️

1 Warstwy w wersji 2 obsługują analizę opartą na usłudze Azure Monitor.
2 Brama hostowana samodzielnie nie wysyła obecnie dzienników zasobów (dzienników diagnostycznych) do usługi Azure Monitor. Opcjonalnie wyślij metryki do usługi Azure Monitor lub skonfiguruj i utrwali dzienniki lokalnie, w których wdrożono własną bramę.
3 Śledzenie jest obecnie niedostępne w warstwach v2.

Uwierzytelnianie i autoryzacja

Bramy zarządzane i self-hosted obsługują wszystkie dostępne opcje uwierzytelniania i autoryzacji interfejsu API z następującymi wyjątkami.

Obsługa funkcji Klasyczny Wersja 2 Zużycie Samodzielne hostowanie
Menedżer poświadczeń ✔️ ✔️ ✔️

Przepływność i skalowanie bramy

Ważne

Przepływność ma wpływ na liczbę i szybkość współbieżnych połączeń klienckich, rodzaj i liczbę skonfigurowanych zasad, rozmiary ładunków, wydajność interfejsu API zaplecza i inne czynniki. Przepływność bramy hostowanej samodzielnie jest również zależna od pojemności obliczeniowej (procesora CPU i pamięci) hosta, na którym jest uruchomiona. Przeprowadź testowanie obciążenia bramy przy użyciu przewidywanych warunków produkcyjnych, aby dokładnie określić oczekiwaną przepływność.

Brama zarządzana

Aby uzyskać szacowaną maksymalną przepływność bramy w warstwach usługi API Management, zobacz Cennik usługi API Management.

Ważne

Dane dotyczące przepływności są prezentowane tylko dla informacji i nie mogą być oparte na planowaniu pojemności i budżetu. Aby uzyskać szczegółowe informacje, zobacz Cennik usługi API Management.

  • Warstwy klasyczne

    • Skalowanie pojemności bramy przez dodanie i usunięcie jednostek skalowania lub uaktualnienie warstwy usługi. (Skalowanie nie jest dostępne w warstwie Deweloper).
    • W warstwach Podstawowa, Standardowa i Premium opcjonalnie skonfiguruj automatyczne skalowanie usługi Azure Monitor.
    • W warstwie Premium opcjonalnie dodaj i dystrybuuj pojemność bramy w wielu regionach.
  • Warstwy w wersji 2

    • Skalowanie pojemności bramy przez dodanie i usunięcie jednostek skalowania lub uaktualnienie warstwy usługi.
  • Warstwa Zużycie

    • Wystąpienia usługi API Management w warstwie Zużycie są skalowane automatycznie w zależności od ruchu.

Własna brama