Menyebarkan instans Azure API Management Anda ke jaringan virtual - mode eksternal
BERLAKU UNTUK: Pengembang | Premi
Azure API Management dapat disebarkan (disuntikkan) di dalam jaringan virtual Azure (VNet) untuk mengakses layanan backend dalam jaringan. Untuk opsi, persyaratan, dan pertimbangan konektivitas VNet, lihat:
- Menggunakan jaringan virtual dengan Azure API Management
- Persyaratan sumber daya jaringan untuk injeksi API Management ke jaringan virtual
Artikel ini menjelaskan cara menyiapkan konektivitas VNet untuk instans API Management Anda dalam mode eksternal, di mana portal pengembang, gateway API, dan titik akhir API Management lainnya dapat diakses dari internet publik, dan layanan backend terletak di dalam jaringan.
Untuk konfigurasi khusus untuk mode internal , di mana titik akhir hanya dapat diakses dalam VNet, lihat Menyebarkan instans Azure API Management Anda ke jaringan virtual - mode internal.
Catatan
Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Untuk memulai, lihat Menginstal Azure PowerShell. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.
Prasyarat
Tinjau persyaratan sumber daya jaringan untuk injeksi API Management ke jaringan virtual sebelum Anda mulai.
Beberapa prasyarat berbeda tergantung pada versi (stv2
atau stv1
) dari platform komputasi hosting instans API Management Anda.
Tip
Ketika Anda menggunakan portal untuk membuat atau memperbarui koneksi jaringan instans API Management yang ada, instans tersebut dihosting di platform komputasi stv2
.
- Sebuah instans API Management. Untuk informasi selengkapnya, lihat Membuat instans Azure API Management.
Jaringan virtual dan subnet harus berada di wilayah dan langganan yang sama dengan instans API Management Anda.
- Subnet yang digunakan untuk tersambung ke instans API Management mungkin berisi jenis sumber daya Azure lainnya.
- Subnet tidak boleh mengaktifkan delegasi apa pun. Delegasikan subnet ke pengaturan layanan untuk subnet harus diatur ke Tidak Ada.
Kelompok keamanan jaringan yang dilampirkan ke subnet di atas. Kelompok keamanan jaringan (NSG) diperlukan untuk mengizinkan konektivitas masuk secara eksplisit, karena penyeimbang beban yang digunakan secara internal oleh API Management aman secara default dan menolak semua lalu lintas masuk. Untuk konfigurasi tertentu, lihat Mengonfigurasi aturan NSG, di bagian lain artikel ini.
Untuk skenario tertentu, aktifkan titik akhir layanan di subnet ke layanan dependen seperti Azure Storage atau Azure SQL. Untuk informasi selengkapnya, lihat Memaksa lalu lintas terowongan ke firewall lokal menggunakan ExpressRoute atau appliance virtual jaringan, nanti di artikel ini.
(Opsional) Alamat IPv4 publik SKU Standar.
Penting
- Mulai Mei 2024, sumber daya alamat IP publik tidak lagi diperlukan saat menyebarkan (menyuntikkan) instans API Management di VNet dalam mode internal atau memigrasikan konfigurasi VNet internal ke subnet baru. Dalam mode VNet eksternal, menentukan alamat IP publik bersifat opsional; jika Anda tidak menyediakannya, alamat IP publik yang dikelola Azure secara otomatis dikonfigurasi dan digunakan untuk lalu lintas API runtime. Hanya berikan alamat IP publik jika Anda ingin memiliki dan mengontrol alamat IP publik yang digunakan untuk komunikasi masuk atau keluar ke internet.
Jika disediakan, alamat IP harus berada di wilayah dan langganan yang sama dengan instans API Management dan jaringan virtual.
Saat membuat sumber daya alamat IP publik, pastikan Anda menetapkan label nama DNS untuk sumber daya tersebut. Secara umum, Anda harus menggunakan nama DNS yang sama dengan instans API Management Anda. Jika Anda mengubahnya, sebarkan ulang instans Anda sehingga label DNS baru diterapkan.
Untuk performa jaringan terbaik, disarankan untuk menggunakan Preferensi perutean default: Jaringan Microsoft.
Saat membuat alamat IP publik di wilayah di mana Anda berencana mengaktifkan redundansi zona untuk instans API Management Anda, konfigurasikan pengaturan Redundan-zona.
Nilai alamat IP ditetapkan sebagai alamat IPv4 publik virtual dari instans API Management di wilayah tersebut.
Untuk penyebaran API Management multi-wilayah, konfigurasikan sumber daya jaringan virtual secara terpisah untuk setiap lokasi.
Mengaktifkan koneksi VNet
Mengaktifkan konektivitas VNet menggunakan portal Microsoft Azure (platform komputasi stv2
)
Buka portal Microsoft Azure untuk menemukan instans API Management Anda. Cari dan pilih layanan API Management.
Pilih instans API Management Anda.
Pilih Jaringan.
Pilih tipe akses eksternal.
Dalam daftar lokasi (wilayah) tempat layanan API Management Anda disediakan:
- Pilih Lokasi.
- Pilih Jaringan virtual, Subnet, dan (opsional) alamat IP.
Daftar VNet diisi dengan VNet Resource Manager yang tersedia di langganan Azure dan disiapkan di wilayah yang sedang Anda konfigurasi.
Pilih Terapkan. Halaman Jaringan instans API Management Anda diperbarui dengan pilihan VNet dan subnet baru Anda.
Lanjutkan mengonfigurasi pengaturan VNet untuk lokasi yang tersisa dari instans API Management Anda.
Di bilah navigasi atas, pilih Simpan.
Dibutuhkan waktu 15 hingga 45 menit untuk memperbarui instans API Management. Instans di tingkat Pengembang memiliki waktu henti selama proses. Instans di tingkat Premium tidak memiliki waktu henti selama proses.
Mengaktifkan konektivitas menggunakan templat Resource Manager (platform komputasi stv2
)
Templat Azure Resource Manager (versi API 2021-08-01)
Aktifkan konektivitas menggunakan cmdlet Azure PowerShell stv1
(platform)
Membuat atau memperbarui instans API Management di VNet.
Konfigurasikan aturan NSG
Konfigurasikan aturan jaringan kustom di subnet API Management untuk memfilter lalu lintas ke dan dari instans API Management Anda. Kami merekomendasikan aturan NSG minimum berikut untuk memastikan operasi dan akses yang tepat ke instans Anda. Tinjau lingkungan Anda dengan hati-hati untuk menentukan lebih banyak aturan yang mungkin diperlukan.
Penting
Bergantung pada penggunaan penembolokan dan fitur lainnya, Anda mungkin perlu mengonfigurasi aturan NSG tambahan di luar aturan minimum dalam tabel berikut. Untuk pengaturan terperinci, lihat Referensi konfigurasi jaringan virtual.
- Untuk sebagian besar skenario, gunakan tag layanan yang ditunjukkan alih-alih alamat IP layanan untuk menentukan sumber dan tujuan jaringan.
- Tetapkan prioritas aturan berikut lebih tinggi dari aturan default.
Port Sumber / Tujuan | Petunjuk | Protokol transportasi | Tag layanan Sumber / Tujuan |
Tujuan | Jenis VNet |
---|---|---|---|---|---|
* / [80], 443 | Masuk | TCP | Internet / VirtualNetwork | Komunikasi klien ke API Management | Hanya eksternal |
* / 3443 | Masuk | TCP | ApiManagement / VirtualNetwork | Titik akhir manajemen untuk portal Microsoft Azure dan PowerShell | Eksternal & Internal |
* / 6390 | Masuk | TCP | AzureLoadBalancer / VirtualNetwork | Load Balancer Infrastruktur Azure | Eksternal & Internal |
* / 443 | Masuk | TCP | AzureTrafficManager / VirtualNetwork | Perutean Azure Traffic Manager untuk penyebaran multi-wilayah | Hanya eksternal |
* / 443 | Keluar | TCP | VirtualNetwork / Storage | Dependensi pada Azure Storage untuk fungsionalitas layanan inti | Eksternal & Internal |
* / 1433 | Keluar | TCP | VirtualNetwork / SQL | Akses ke titik akhir Azure SQL untuk fungsionalitas layanan inti | Eksternal & Internal |
* / 443 | Keluar | TCP | VirtualNetwork / AzureKeyVault | Akses ke Azure Key Vault untuk fungsionalitas layanan inti | Eksternal & Internal |
* / 1886, 443 | Keluar | TCP | VirtualNetwork / AzureMonitor | Memublikasikan Log dan Metrik Diagnostik, Kesehatan Sumber Daya, dan Application Insights | Eksternal & Internal |
Menyambungkan ke layanan web yang dihosting dalam jaringan virtual
Setelah menyambungkan layanan API Management ke VNet, Anda dapat mengakses layanan backend di dalamnya sama seperti Anda mengakses layanan publik. Saat membuat atau mengedit API, ketikkan alamat IP lokal atau nama host (jika server DNS dikonfigurasi untuk VNet) layanan web Anda di bidang URL layanan web.
Penyiapan server DNS kustom
Dalam mode VNet eksternal, Azure mengelola DNS secara default. Anda dapat mengonfigurasi server DNS kustom secara opsional.
Layanan API Management bergantung pada beberapa layanan Azure. Ketika API Management dihost di VNet dengan server DNS kustom, manajemen ini perlu menyelesaikan nama host layanan Azure tersebut.
- Untuk panduan mengenai penyiapan DNS kustom, termasuk meneruskan untuk nama host yang disediakan Azure, lihat Resolusi nama untuk sumber daya di jaringan virtual Azure.
- Akses jaringan keluar pada port
53
diperlukan untuk komunikasi dengan server DNS. Untuk pengaturan lainnya, lihat Referensi konfigurasi jaringan virtual.
Penting
Jika Anda berencana menggunakan server DNS kustom untuk VNet, siapkan server DNS sebelum menyebarkan layanan API Management ke dalamnya. Jika tidak, Anda perlu memperbarui layanan API Management setiap kali Anda mengubah Server DNS dengan menjalankan Terapkan Operasi Konfigurasi Jaringan.
Perutean
- Alamat IP publik (VIP) dengan beban seimbang dicadangkan untuk menyediakan akses ke semua titik akhir API Management dan sumber daya di luar VNET.
- VIP publik dapat ditemukan pada bilah Gambaran Umum/Esensial di portal Microsoft Azure.
Untuk informasi dan pertimbangan selengkapnya, lihat Alamat IP Azure API Management.
Alamat VIP dan DIP
Alamat IP dinamis (DIP) akan ditetapkan ke setiap mesin virtual yang mendasarinya dalam layanan dan digunakan untuk mengakses titik akhir dan sumber daya di VNet dan di VNet yang di-peering. Alamat IP virtual publik (VIP) layanan API Management akan digunakan untuk mengakses sumber daya yang dapat diakses oleh publik.
Jika daftar pembatasan IP mengamankan sumber daya dalam VNet atau VNet yang di-peering, sebaiknya tentukan seluruh rentang subnet tempat layanan API Management disebarkan untuk memberikan atau membatasi akses dari layanan.
Pelajari selengkapnya tentang ukuran subnet yang disarankan.
Memaksa lalu lintas penerowongan ke firewall lokal Menggunakan ExpressRoute atau appliance virtual jaringan
Penerowongan paksa memungkinkan Anda mengalihkan atau "memaksa" semua lalu lintas yang terikat dengan internet dari subnet Anda untuk kembali ke lokal guna diperiksa dan diaudit. Biasanya, Anda dapat mengonfigurasi dan menentukan rute default Anda sendiri (0.0.0.0/0
), memaksa semua lalu lintas dari subnet API Management mengalir melalui firewall lokal atau ke appliance virtual jaringan. Arus lalu lintas ini memutus konektivitas dengan API Management karena lalu lintas keluar diblokir secara lokal, atau diblokir melalui proses NAT sehingga menjadi serangkaian alamat yang tidak dapat dikenali dan tidak lagi berfungsi dengan berbagai titik akhir Azure. Anda dapat menyelesaikan masalah ini melalui salah satu metode berikut:
Mengaktifkan titik akhir layanan pada subnet tempat layanan API Management disebarkan:
- Azure SQL (hanya diperlukan di wilayah utama jika layanan API Management disebarkan ke beberapa wilayah)
- Azure Storage
- Azure Event Hubs
- Azure Key Vault (diperlukan saat API Management disebarkan pada platform
stv2
)
Dengan mengaktifkan titik akhir langsung dari subnet API Management ke layanan ini, Anda dapat menggunakan jaringan backbone Microsoft Azure, menyediakan perutean yang optimal untuk lalu lintas layanan. Jika Anda menggunakan titik akhir layanan dengan API Management yang disalurkan secara paksa, lalu lintas untuk layanan Azure sebelumnya tidak dialihkan secara paksa. Namun, lalu lintas dependensi layanan API Management lainnya tetap disalurkan secara paksa. Pastikan firewall atau appliance virtual Anda tidak memblokir lalu lintas ini, atau layanan API Management mungkin tidak berfungsi dengan baik.
Catatan
Kami sangat menyarankan untuk mengaktifkan titik akhir layanan langsung dari subnet API Management ke layanan dependen seperti Azure SQL dan Azure Storage yang mendukungnya. Namun, beberapa organisasi mungkin memiliki persyaratan untuk memaksa terowongan semua lalu lintas dari subnet API Management. Dalam hal ini, pastikan Anda mengonfigurasi firewall atau appliance virtual untuk memungkinkan lalu lintas ini. Anda harus mengizinkan rentang alamat IP lengkap dari setiap layanan dependen, dan menjaga konfigurasi ini tetap terbarui saat infrastruktur Azure berubah. Layanan API Management Anda mungkin juga mengalami latensi atau batas waktu yang tidak terduga karena penerowongan paksa lalu lintas jaringan ini.
Semua lalu lintas sarana kontrol dari internet ke titik akhir manajemen layanan API Management Anda dirutekan melalui serangkaian IP masuk tertentu, yang dihosting oleh API Management, yang disertai oleh tag layanan ApiManagement. Ketika lalu lintas disalurkan secara paksa, respons tidak akan secara simetris memetakan kembali ke IP sumber masuk ini dan konektivitas ke titik akhir manajemen hilang. Untuk mengatasi batasan ini, konfigurasikan rute yang ditentukan pengguna (UDR) untuk tag layanan ApiManagement dengan jenis hop berikutnya diatur ke "Internet", untuk mengarahkan lalu lintas kembali ke Azure.
Catatan
Mengizinkan lalu lintas pengelola API Management melewati firewall lokal atau appliance virtual jaringan tidak dianggap sebagai risiko keamanan yang signifikan. Konfigurasi yang disarankan untuk subnet API Management Anda memungkinkan lalu lintas manajemen masuk pada port 3443 hanya dari kumpulan alamat IP Azure yang mencakup tag layanan ApiManagement. Konfigurasi UDR yang disarankan hanya untuk jalur pengembalian lalu lintas Azure ini.
(Mode VNet Eksternal) Lalu lintas sarana data untuk klien yang mencoba mencapai gateway API Management dan portal pengembang dari internet juga akan dihilangkan secara default karena perutean asimetris yang diperkenalkan oleh penerowongan paksa. Untuk setiap klien yang memerlukan akses, konfigurasikan UDR eksplisit dengan jenis hop berikutnya "Internet" untuk melewati firewall atau appliance jaringan virtual.
Untuk dependensi layanan API Management lainnya yang berupa terowongan paksa, harus ada cara untuk menyelesaikan nama host dan menjangkau titik akhir. Ini termasuk:
- Pemantuan Metrik dan Kesehatan
- Diagnostik portal Microsoft Azure
- Relai SMTP
- CAPTCHA Portal pengembang
- Server Azure KMS
Untuk informasi selengkapnya, lihat Referensi konfigurasi jaringan virtual.
Masalah konfigurasi jaringan umum
Bagian ini telah dipindahkan. Lihat Referensi konfigurasi jaringan virtual.
Pemecahan Masalah
Penyebaran awal layanan API Management tidak berhasil ke dalam subnet
- Sebarkan komputer virtual ke subnet yang sama.
- Sambungkan ke komputer virtual dan validasi konektivitas ke salah satu dari masing-masing sumber daya berikut di langganan Azure Anda:
- Blob Azure Storage
- Database Azure SQL
- Tabel Azure Storage
- Azure Key Vault (untuk instans API Management yang dihosting di platform
stv2
)
Penting
Setelah memvalidasi konektivitas, hapus semua sumber daya di subnet sebelum menerapkan API Management ke subnet (diperlukan saat API Management dihosting di platform stv1
).
Memverifikasi Status Jaringan
Setelah menyebarkan API Management ke subnet, gunakan portal untuk memeriksa konektivitas instans Anda ke dependensi seperti Azure Storage.
Di portal, di menu sebelah kiri, pada Penyebaran dan infrastruktur, pilih Jaringan>Status jaringan.
Filter | Deskripsi |
---|---|
Diperlukan | Pilih untuk meninjau konektivitas layanan Azure yang diperlukan untuk API Management. Kegagalan menunjukkan bahwa instans tidak dapat melakukan operasi inti untuk mengelola API. |
Opsional | Pilih untuk meninjau konektivitas layanan opsional. Kegagalan hanya menunjukkan bahwa fungsionalitas tertentu tidak akan berfungsi (misalnya, SMTP). Kegagalan dapat menyebabkan degradasi dalam hal penggunaan dan pemantauan instans API Management serta penyediaan SLA dengan komitmen tinggi. |
Untuk membantu memecahkan masalah konektivitas, pilih:
Metrik - untuk meninjau metrik status konektivitas jaringan
Diagnosis - untuk menjalankan pemverifikasi jaringan virtual selama periode waktu tertentu
Untuk mengatasi masalah konektivitas, tinjau Masalah konfigurasi jaringan dan perbaiki pengaturan jaringan yang diperlukan.
Pembaruan bertahap
Saat membuat perubahan pada jaringan Anda, lihat NETWORKStatus API untuk memverifikasi bahwa layanan API Management belum kehilangan akses ke sumber daya penting. Status konektivitas harus diperbarui setiap 15 menit.
Untuk menerapkan perubahan konfigurasi jaringan ke instans API Management menggunakan portal:
- Di menu sebelah kiri untuk instans Anda, di bawah Penyebaran dan infrastruktur, pilih Jaringan>Virtual.
- Pilih Terapkan konfigurasi jaringan.
Tautan Navigasi Sumber Daya
Instans API Management yang dihosting di stv1
platform komputasi, saat disebarkan ke subnet VNet Resource Manager, mencadangkan subnet dengan membuat tautan navigasi sumber daya. Jika subnet sudah berisi sumber daya dari penyedia lain, penyebaran akan gagal. Demikian pula, ketika Anda menghapus layanan API Management atau memindahkannya ke subnet yang berbeda, tautan navigasi sumber daya akan dihapus.
Tantangan yang dihadapi dalam menetapkan ulang instans API Management ke subnet sebelumnya
- Kunci VNet - Saat memindahkan instans API Management kembali ke subnet aslinya, penugasan ulang segera mungkin tidak dimungkinkan karena kunci VNet, yang membutuhkan waktu hingga satu jam untuk dihapus. Jika subnet asli memiliki layanan API Management berbasis platform lainnya
stv1
(berbasis layanan cloud), menghapusnya dan menunggu diperlukan untuk menyebarkanstv2
layanan berbasis platform di subnet yang sama. - Kunci grup sumber daya - Skenario lain yang perlu dipertimbangkan adalah adanya kunci cakupan di tingkat grup sumber daya atau yang lebih tinggi, menghambat proses Penghapusan Tautan Navigasi Sumber Daya. Untuk mengatasinya, hapus kunci cakupan dan izinkan penundaan sekitar 4-6 jam agar layanan API Management membatalkan tautan dari subnet asli sebelum penghapusan kunci, memungkinkan penyebaran ke subnet yang diinginkan.
Memecahkan masalah koneksi ke Microsoft Graph dari dalam VNet
Konektivitas jaringan ke Microsoft Graph diperlukan untuk fitur termasuk masuk pengguna ke portal pengembang menggunakan penyedia identitas Microsoft Entra.
Untuk memecahkan masalah konektivitas ke Microsoft Graph dari dalam VNet:
Pastikan bahwa NSG dan aturan jaringan lainnya dikonfigurasi untuk konektivitas keluar dari instans API Management Anda ke Microsoft Graph (menggunakan tag layanan AzureActiveDirectory ).
Pastikan resolusi DNS dan akses jaringan ke
graph.microsoft.com
dari dalam VNet. Misalnya, provisikan VM baru di dalam VNet, sambungkan, dan cobaGET https://graph.microsoft.com/v1.0/$metadata
dari browser atau menggunakan cURL, PowerShell, atau alat lainnya.
Langkah berikutnya
Pelajari lebih lanjut tentang: