Gateway API di Azure API Management

BERLAKU UNTUK: Semua tingkatAN API Management

Artikel ini menyediakan informasi tentang peran dan fitur komponen gateway API Management dan membandingkan gateway yang dapat Anda sebarkan.

Informasi terkait:

Peran gateway

Gateway API Management (juga disebut data plane atau runtime) adalah komponen layanan yang bertanggung jawab untuk memproksi permintaan API, menerapkan kebijakan, dan mengumpulkan telemetri.

Utamanya, gateway:

Catatan

Semua permintaan ke gateway API Management, termasuk yang ditolak oleh konfigurasi kebijakan, dihitung terhadap batas tarif, kuota, dan batas penagihan yang dikonfigurasi jika diterapkan di tingkat layanan.

Terkelola dan dihost sendiri

API Management menawarkan gateway terkelola dan dihost sendiri:

  • Terkelola - Gateway terkelola adalah komponen gateway default yang disebarkan di Azure untuk setiap instans API Management di setiap tingkat layanan. Dengan gateway terkelola, semua lalu lintas API mengalir melalui Azure terlepas dari tempat backend yang mengimplementasikan API dihosting.

    Catatan

    Karena perbedaan dalam arsitektur layanan yang mendasar, gateway yang disediakan di berbagai tingkat layanan API Management memiliki beberapa perbedaan dalam kemampuan. Untuk detailnya, lihat bagian Perbandingan fitur: Gateway terkelola versus yang dihost sendiri.

  • Dihost sendiri - Gateway yang dihost sendiri adalah versi opsional yang dikontainerisasi dari gateway terkelola default yang tersedia di tingkat layanan tertentu. Ini berguna untuk skenario hibrid dan multicloud di mana ada persyaratan untuk menjalankan gateway dari Azure di lingkungan yang sama tempat backend API dihosting. Gateway yang dihosting sendiri memungkinkan pelanggan dengan infrastruktur TI hibrid untuk mengelola API yang dihosting di lokasi dan di seluruh cloud dari satu layanan API Management di Azure.

    • Gateway yang dihosting sendiri dikemas sebagai kontainer Docker berbasis Linux dan umumnya disebarkan ke Kubernetes, termasuk ke Azure Kubernetes Service dan Kubernetes yang mendukung Azure Arc.

    • Setiap gateway yang dihost sendiri dikaitkan dengan sumber daya Gateway dalam instans API Management berbasis cloud tempat gateway menerima pembaruan konfigurasi dan mengomunikasikan status.

Penting

Dukungan untuk gateway yang dihost sendiri Azure API Management versi 0 dan gambar kontainer versi 1 berakhir pada 1 Oktober 2023, bersama dengan Api Konfigurasi v1 yang sesuai. Gunakan panduan migrasi kami untuk menggunakan gateway yang dihost sendiri v2.0.0 atau yang lebih tinggi dengan Configuration API v2. Pelajari lebih lanjut dalam dokumentasi penghentian kami

Perbandingan fitur: Gateway terkelola versus yang dihost sendiri

Tabel berikut membandingkan fitur yang tersedia di gateway API Management berikut:

  • Klasik - gateway terkelola yang tersedia di tingkat layanan Pengembang, Dasar, Standar, dan Premium (sebelumnya dikelompokkan sebagai tingkat khusus )
  • V2 - gateway terkelola yang tersedia di tingkat Dasar v2 dan Standar v2
  • Konsumsi - gateway terkelola yang tersedia di tingkat Konsumsi
  • Dihost sendiri - gateway opsional yang dihost sendiri tersedia di tingkat layanan tertentu

Catatan

  • Beberapa fitur gateway terkelola dan yang dihost sendiri hanya didukung di tingkat layanan tertentu atau dengan lingkungan penyebaran tertentu untuk gateway yang dihost sendiri.
  • Untuk fitur gateway yang didukung saat ini, pastikan Anda telah meningkatkan ke versi utama terbaru dari gambar kontainer gateway yang dihost sendiri.
  • Lihat juga batasan gateway yang dihost sendiri.

Infrastruktur

Dukungan fitur Klasik V2 Consumption Dihosting sendiri
Domain kustom ✔️ ✔️ ✔️ ✔️
Cache bawaan ✔️ ✔️
Cache eksternal yang kompatibel dengan Redis ✔️ ✔️ ✔️ ✔️
Injeksi jaringan virtual Pengembang, Premium ✔️1,2
Titik akhir privat masuk Pengembang, Dasar, Standar, dan Premium
Integrasi jaringan virtual keluar Standar V2
Zona ketersediaan Premium ✔️1
Penyebaran multi-wilayah Premium ✔️1
Sertifikat akar CA untuk validasi sertifikat ✔️ ✔️ ✔️3
Sertifikat akar CA untuk validasi sertifikat ✔️ ✔️ ✔️3
Sertifikat domain terkelola Pengembang, Dasar, Standar, dan Premium ✔️
Pengaturan TLS ✔️ ✔️ ✔️ ✔️
HTTP/2 (Client-to-gateway) ✔️4 ✔️4 ✔️
HTTP/2 (Gateway-ke-backend) ✔️
Deteksi ancaman API dengan Defender untuk API ✔️ ✔️

1 Tergantung pada cara gateway disebarkan, tetapi merupakan tanggung jawab pelanggan.
2 Koneksi ke titik akhir konfigurasi gateway v2 yang dihost sendiri memerlukan resolusi DNS dari nama host titik akhir.
3sertifikat akar CA untuk gateway yang dihost sendiri dikelola secara terpisah per gateway
4 Protokol klien perlu diaktifkan.

API backend

Dukungan fitur Klasik V2 Consumption Dihosting sendiri
spesifikasi OpenAPI ✔️ ✔️ ✔️ ✔️
Spesifikasi WSDL ✔️ ✔️ ✔️ ✔️
Spesifikasi WADL ✔️ ✔️ ✔️ ✔️
Aplikasi Logika ✔️ ✔️ ✔️ ✔️
App Service ✔️ ✔️ ✔️ ✔️
Aplikasi Fungsi ✔️ ✔️ ✔️ ✔️
Aplikasi Kontainer ✔️ ✔️ ✔️ ✔️
Service Fabric Pengembang, Premium
Pass-through GraphQL ✔️ ✔️ ✔️ ✔️
Synthetic GraphQL ✔️ ✔️ ✔️1 ✔️1
Pass-through WebSocket ✔️ ✔️ ✔️
Pass-through gRPC (pratinjau) ✔️
OData (pratinjau) ✔️ ✔️ ✔️ ✔️
Pass-through GraphQL ✔️ ✔️ ✔️ ✔️
Azure OpenAI ✔️ ✔️ ✔️ ✔️
Pemutus sirkuit di backend (pratinjau) ✔️ ✔️ ✔️
Kumpulan backend yang seimbang beban (pratinjau) ✔️ ✔️ ✔️ ✔️

1 Langganan GraphQL sintetis (pratinjau) tidak didukung.

Kebijakan

Gateway terkelola dan yang dihost sendiri mendukung semua kebijakan yang tersedia dalam definisi kebijakan dengan pengecualian berikut.

Dukungan fitur Klasik V2 Consumption 1 yang dihostsendiri
Integrasi Dapr ✔️
Pemecah masalah GraphQL dan validasi GraphQL ✔️ ✔️ ✔️
Mendapatkan konteks otorisasi ✔️ ✔️ ✔️
Kuota dan batas tarif ✔️ ✔️2 ✔️3 ✔️4

1 Kebijakan yang dikonfigurasi yang tidak didukung oleh gateway yang dihost sendiri dilewati selama eksekusi kebijakan.
2 Kuota berdasarkan kebijakan kunci tidak tersedia di tingkat v2.
2 Batas tarif menurut kunci dan kuota berdasarkan kebijakan utama tidak tersedia di tingkat Konsumsi.
3 Jumlah batas laju dalam gateway yang dihost sendiri dapat dikonfigurasi untuk disinkronkan secara lokal (di antara instans gateway di seluruh node kluster), misalnya, melalui penyebaran bagan Helm untuk Kubernetes atau menggunakan templat penyebaran portal Azure. Namun, jumlah batas laju tidak disinkronkan dengan sumber daya gateway lain yang dikonfigurasi dalam instans API Management, termasuk gateway terkelola di cloud. Pelajari lebih lanjut

Pemantauan

Untuk detail tentang opsi pemantauan, lihat Pengamatan di Azure API Management.

Dukungan fitur Klasik V2 Consumption Dihosting sendiri
Analitik API ✔️ ✔️1
Application Insights ✔️ ✔️ ✔️ ✔️
Pengelogan melalui Event Hubs ✔️ ✔️ ✔️ ✔️
Metrik di Azure Monitor ✔️ ✔️ ✔️ ✔️
Pengumpul OpenTelemetry ✔️
Meminta log di Azure Monitor dan Analitik Log ✔️ ✔️ 2
Metrik dan log lokal ✔️
Pelacakan permintaan ✔️ 3 ✔️ ✔️

1 Tingkat v2 mendukung analitik berbasis Azure Monitor.
2 Gateway yang dihost sendiri saat ini tidak mengirim log sumber daya (log diagnostik) ke Azure Monitor. Anda secara opsional dapat mengirim metrik ke Azure Monitor, atau mengonfigurasikan dan mempertahankan log secara lokal tempat gateway yang dihost sendiri disebarkan.
3 Pelacakan saat ini tidak tersedia di tingkat v2.

Autentikasi dan otorisasi

Gateway terkelola dan yang dihost sendiri mendukung semua opsi autentikasi dan otorisasi API yang tersedia dengan pengecualian berikut.

Dukungan fitur Klasik V2 Consumption Dihosting sendiri
Manajer kredensial ✔️ ✔️ ✔️

Throughput dan penskalaan gateway

Penting

Throughput dipengaruhi oleh jumlah dan tingkat koneksi klien bersamaan, jenis dan jumlah kebijakan yang dikonfigurasi, ukuran payload, performa API backend, serta faktor lainnya. Throughput gateway yang dihost sendiri juga tergantung pada kapasitas komputasi (CPU dan memori) host tempat gateway tersebut berjalan. Lakukan pengujian muatan gateway menggunakan kondisi produksi yang diantisipasi untuk menentukan throughput yang diharapkan secara akurat.

Gateway terkelola

Untuk perkiraan throughput gateway maksimum di tingkat layanan API Management, lihat harga API Management.

Penting

Angka throughput disajikan hanya sebagai informasi dan tidak boleh diandalkan untuk perencanaan kapasitas dan anggaran. Lihat harga API Management untuk detailnya.

  • Tingkat klasik

    • Skalakan kapasitas gateway dengan menambahkan dan menghapus unit skala, atau meningkatkan tingkat layanan. (Penskalaan tidak tersedia di tingkat Pengembang.)
    • Di tingkat Dasar, Standar, dan Premium, konfigurasikan skala otomatis Azure Monitor secara opsional.
    • Di tingkat Premium, tambahkan dan distribusikan kapasitas gateway di beberapa wilayah secara opsional.
  • Tingkat v2

    • Skalakan kapasitas gateway dengan menambahkan dan menghapus unit skala, atau meningkatkan tingkat layanan.
  • Tingkat konsumsi

    • Instans API Management pada tingkat Konsumsi menskalakan secara otomatis berdasarkan lalu lintas.

Gateway yang dihost sendiri