Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
BERLAKU UNTUK: Pengembang | Dasar | Standar | Premi
Dengan menerbitkan dan mengelola API Anda melalui Azure API Management, Anda memanfaatkan toleransi kesalahan dan kapabilitas infrastruktur yang Anda rancang, terapkan, dan kelola secara manual. Platform Azure mengurangi sebagian besar potensi kegagalan dengan sebagian kecil dari biaya.
Untuk pulih dari masalah ketersediaan yang memengaruhi layanan API Management Anda, bersiaplah untuk merekonstruksi layanan Anda di wilayah lain kapan saja. Bergantung pada tujuan waktu pemulihan, Anda mungkin ingin mempertahankan layanan siaga di satu wilayah atau lebih. Anda mungkin juga mencoba mempertahankan konfigurasi dan konten mereka secara sinkron dengan layanan aktif sesuai dengan tujuan titik pemulihan Anda. Fitur pencadangan dan pemulihan API Management menyediakan komponen penting untuk menerapkan strategi pemulihan bencana.
Operasi pencadangan dan pemulihan juga dapat digunakan untuk mereplikasi konfigurasi layanan API Management antara lingkungan operasional, misalnya, pengembangan dan pentahapan. Berhati-hatilah bahwa data runtime seperti pengguna dan langganan akan disalin juga, yang mungkin tidak selalu diinginkan.
Artikel ini memperlihatkan cara mengotomatisasi operasi pencadangan dan pemulihan instans API Management Anda menggunakan akun penyimpanan eksternal. Langkah-langkah yang ditampilkan di sini menggunakan cmdlet Azure PowerShell Backup-AzApiManagement dan Restore-AzApiManagement , atau API Management Service - Backup dan API Management Service - Restore REST API.
Peringatan
Setiap cadangan kedaluwarsa setelah 30 hari. Jika Anda mencoba memulihkan cadangan setelah periode 30 hari kedaluwarsa, pemulihan akan gagal dengan pesan Cannot restore: backup expired
.
Penting
Operasi pemulihan tidak mengubah konfigurasi nama host kustom dari layanan target. Kami merekomendasikan untuk menggunakan nama host kustom dan sertifikat TLS yang sama untuk layanan aktif dan siaga, sehingga, setelah operasi pemulihan selesai, lalu lintas dapat diarahkan kembali ke instans siaga dengan perubahan CNAME DNS sederhana.
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.
Penting
Perubahan pada infrastruktur layanan API Management Anda (seperti mengonfigurasi domain kustom, menambahkan sertifikat CA, penskalaan, konfigurasi jaringan virtual, perubahan zona ketersediaan, dan penambahan wilayah) dapat memakan waktu 15 menit atau lebih lama untuk diselesaikan, tergantung pada tingkat layanan dan ukuran penyebaran. Harapkan waktu pemrosesan yang lebih lama dari suatu instans dengan jumlah unit skala yang lebih besar atau konfigurasi multi-wilayah. Perubahan bergulir pada API Management dijalankan dengan hati-hati untuk mempertahankan kapasitas dan ketersediaan.
Saat layanan diperbarui, perubahan infrastruktur layanan lainnya tidak dapat dilakukan. Namun, Anda dapat mengonfigurasi API, produk, kebijakan, dan pengaturan pengguna. Layanan ini tidak akan mengalami waktu henti gateway, dan API Management akan terus melayani permintaan API tanpa gangguan (kecuali di tingkat Pengembang).
Prasyarat
Instans layanan API Management di tingkat layanan yang didukung. Jika Anda tidak memilikinya, lihat Membuat instans layanan API Management.
Catatan
Saat ini, pencadangan dan pemulihan tidak didukung pada instans Pengelolaan API yang memiliki gateway ruang kerja yang terhubung.
Akun penyimpanan Azure. Jika Anda tidak memilikinya, lihat Membuat akun penyimpanan.
- Buat kontainer di akun penyimpanan untuk menyimpan data cadangan.
Versi terbaru Azure PowerShell, jika Anda ingin menggunakan cmdlet Azure PowerShell. Jika Anda belum melakukannya, instal Azure PowerShell.
Mengonfigurasi akses akun penyimpanan
Saat menjalankan operasi pencadangan atau pemulihan, Anda perlu mengonfigurasi akses ke akun penyimpanan. API Management mendukung dua mekanisme akses penyimpanan: kunci akses Azure Storage atau identitas terkelola API Management.
Mengonfigurasi kunci akses akun penyimpanan
Azure membuat dua kunci akses akun penyimpanan 512-bit untuk setiap akun penyimpanan. Kunci ini dapat digunakan untuk mengotorisasi akses ke data di akun penyimpanan Anda melalui otorisasi Kunci Bersama. Untuk melihat, mengambil, dan mengelola kunci, lihat Mengelola kunci akses akun penyimpanan.
Mengonfigurasi identitas terkelola dalam API Management
Catatan
Menggunakan identitas terkelola API Management untuk operasi penyimpanan selama pencadangan dan pemulihan didukung dalam REST API dari API Management versi 2021-04-01-preview
atau yang lebih baru.
Aktifkan identitas terkelola yang ditetapkan sistem atau ditetapkan pengguna untuk API Management di instans API Management Anda.
- Jika Anda mengaktifkan identitas terkelola yang ditetapkan oleh pengguna, perhatikan ID Klien identitas.
- Jika Anda akan mencadangkan dan memulihkan ke instans API Management yang berbeda, aktifkan identitas terkelola di instans sumber dan target.
Tetapkan identitas peran Kontributor Data Blob Penyimpanan , yang dicakup ke akun penyimpanan yang digunakan untuk pencadangan dan pemulihan. Untuk menetapkan peran, gunakan portal Microsoft Azure atau alat Azure lainnya.
Mencadangkan layanan API Management
Masuk dengan Azure PowerShell.
Dalam contoh berikut:
- Instans API Management bernama myapim berada dalam grup sumber daya apimresourcegroup.
- Akun penyimpanan bernama backupstorageaccount berada di grup sumber daya storageresourcegroup. Akun penyimpanan memiliki kontainer bernama cadangan.
- Blob cadangan akan dibuat dengan nama ContosoBackup.apimbackup.
Mengatur variabel dalam PowerShell:
$apiManagementName="myapim";
$apiManagementResourceGroup="apimresourcegroup";
$storageAccountName="backupstorageaccount";
$storageResourceGroup="storageresourcegroup";
$containerName="backups";
$blobName="ContosoBackup.apimbackup"
Akses menggunakan kunci akses penyimpanan
$storageKey = (Get-AzStorageAccountKey -ResourceGroupName $storageResourceGroup -StorageAccountName $storageAccountName)[0].Value
$storageContext = New-AzStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageKey
Backup-AzApiManagement -ResourceGroupName $apiManagementResourceGroup -Name $apiManagementName `
-StorageContext $storageContext -TargetContainerName $containerName -TargetBlobName $blobName
Akses menggunakan identitas terkelola
Untuk mengonfigurasi identitas terkelola di instans API Management Anda untuk mengakses akun penyimpanan, lihat Mengonfigurasi identitas terkelola, sebelumnya di artikel ini.
Akses menggunakan identitas terkelola yang ditetapkan sistem
$storageContext = New-AzStorageContext -StorageAccountName $storageAccountName
Backup-AzApiManagement -ResourceGroupName $apiManagementResourceGroup -Name $apiManagementName `
-StorageContext $storageContext -TargetContainerName $containerName `
-TargetBlobName $blobName -AccessType "SystemAssignedManagedIdentity"
Akses menggunakan identitas terkelola yang ditetapkan pengguna
Dalam contoh ini, identitas terkelola yang ditetapkan pengguna bernama myidentity berada di grup sumber daya identityresourcegroup.
$identityName = "myidentity";
$identityResourceGroup = "identityresourcegroup";
$identityId = (Get-AzUserAssignedIdentity -Name $identityName -ResourceGroupName $identityResourceGroup).ClientId
$storageContext = New-AzStorageContext -StorageAccountName $storageAccountName
Backup-AzApiManagement -ResourceGroupName $apiManagementResourceGroup -Name $apiManagementName `
-StorageContext $storageContext -TargetContainerName $containerName `
-TargetBlobName $blobName -AccessType "UserAssignedManagedIdentity" ` -identityClientId $identityid
Pencadangan adalah operasi jangka panjang yang mungkin membutuhkan waktu lebih dari beberapa menit untuk selesai. Selama waktu ini, gateway API terus menangani permintaan, tetapi status layanan sedang diperbarui.
Memulihkan layanan API Management
Perhatian
Hindari perubahan yang dilakukan pada konfigurasi layanan (misalnya, API, kebijakan, tampilan portal pengembang) saat operasi pemulihan sedang berlangsung. Perubahan dapat ditimpa.
Pada contoh berikut,
- Instans API Management bernama myapim dipulihkan dari blob cadangan bernama ContosoBackup.apimbackup di backupstorageaccount akun penyimpanan.
- Blob cadangan berada dalam kontainer bernama cadangan.
Mengatur variabel dalam PowerShell:
$apiManagementName="myapim";
$apiManagementResourceGroup="apimresourcegroup";
$storageAccountName="backupstorageaccount";
$storageResourceGroup="storageresourcegroup";
$containerName="backups";
$blobName="ContosoBackup.apimbackup"
Akses menggunakan kunci akses penyimpanan
$storageKey = (Get-AzStorageAccountKey -ResourceGroupName $storageResourceGroup -StorageAccountName $storageAccountName)[0].Value
$storageContext = New-AzStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $storageKey
Restore-AzApiManagement -ResourceGroupName $apiManagementResourceGroup -Name $apiManagementName `
-StorageContext $storageContext -SourceContainerName $containerName -SourceBlobName $blobName
Akses menggunakan identitas terkelola
Untuk mengonfigurasi identitas terkelola di instans API Management Anda untuk mengakses akun penyimpanan, lihat Mengonfigurasi identitas terkelola, sebelumnya di artikel ini.
Akses menggunakan identitas terkelola yang ditetapkan sistem
$storageContext = New-AzStorageContext -StorageAccountName $storageAccountName
Restore-AzApiManagement -ResourceGroupName $apiManagementResourceGroup -Name $apiManagementName `
-StorageContext $storageContext -SourceContainerName $containerName `
-SourceBlobName $blobName -AccessType "SystemAssignedManagedIdentity"
Akses menggunakan identitas terkelola yang ditetapkan pengguna
Dalam contoh ini, identitas terkelola yang ditetapkan pengguna bernama myidentity berada di grup sumber daya identityresourcegroup.
$identityName = "myidentity";
$identityResourceGroup = "identityresourcegroup";
$identityId = (Get-AzUserAssignedIdentity -Name $identityName -ResourceGroupName $identityResourceGroup).ClientId
$storageContext = New-AzStorageContext -StorageAccountName $storageAccountName
Restore-AzApiManagement -ResourceGroupName $apiManagementResourceGroup -Name $apiManagementName `
-StorageContext $storageContext -SourceContainerName $containerName `
-SourceBlobName $blobName -AccessType "UserAssignedManagedIdentity" ` -identityClientId $identityid
Keterbatasan
- Pemulihan cadangan dijamin hanya selama 30 hari sejak tanggal pembuatannya.
- Saat pencadangan sedang berlangsung, hindari perubahan manajemen dalam layanan seperti peningkatan atau penurunan tingkat harga layanan, perubahan nama domain, dan perubahan lainnya.
- Perubahan yang dilakukan pada konfigurasi layanan (misalnya, API, kebijakan, dan tampilan portal pengembang) saat operasi pencadangan sedang dalam proses mungkin dikecualikan dari cadangan dan akan hilang.
- Cadangan tidak menangkap data log pra-agregat yang digunakan dalam laporan yang ditampilkan di jendela Analitik di portal Microsoft Azure.
- Berbagi Sumber Daya Lintas Asal (CORS)tidak boleh diaktifkan pada layanan Blob di akun penyimpanan.
- Tingkat harga layanan yang dipulihkan harus sesuai dengan tingkat harga layanan yang dicadangkan yang dipulihkan.
Batasan jaringan penyimpanan
Jika akun penyimpanan memiliki firewall yang diaktifkan, disarankan untuk menggunakan identitas terkelola yang ditetapkan oleh sistem pada instance API Management untuk mengakses akun tersebut. Pastikan bahwa akun penyimpanan memberikan akses ke layanan Azure tepercaya.
Apa yang tidak dicadangkan
- Data penggunaan yang digunakan untuk membuat laporan analitik tidak disertakan dalam cadangan. Gunakan REST API Azure API Management untuk mengambil laporan analitik secara berkala untuk pengamanan.
- Sertifikat TLS/SSL kustom domain.
- Sertifikat CA kustom, yang mencakup sertifikat menengah atau akar yang diunggah oleh pelanggan.
- Pengaturan integrasi jaringan virtual .
- Konfigurasi identitas terkelola .
- Konfigurasi diagnostik Azure Monitor .
- Pengaturan protokol dan sandi .
- Konten portal pengembang .
Frekuensi yang Anda gunakan untuk melakukan pencadangan layanan mempengaruhi tujuan titik pemulihan Anda. Untuk meminimalkannya, sebaiknya terapkan pencadangan rutin dan lakukan pencadangan sesuai permintaan setelah Anda melakukan perubahan pada layanan API Management Anda.
Konten terkait
Lihat sumber daya terkait berikut untuk proses pencadangan/pemulihan:
- Mengotomatiskan Pencadangan dan Pemulihan API Management dengan Logic Apps
- Cara memindahkan Azure API Management di seluruh wilayah
- Tingkat API Management Premium juga mendukung redundansi zona, yang memberikan ketahanan dan ketersediaan tinggi untuk instans layanan di wilayah Azure tertentu (lokasi).