Vészhelyreállítás a biztonsági mentés és visszaállítás használatával az Azure API Managementben
A KÖVETKEZŐKRE VONATKOZIK: Fejlesztő | Alapszintű | Standard | Prémium
Az API-k Azure API Managementen keresztüli közzétételével és kezelésével kihasználhatja a hibatűrési és infrastruktúra-képességeket, amelyeket egyébként manuálisan tervezhet, implementálhat és kezelhet. Az Azure-platform a költségek töredékével mérsékli a lehetséges hibák nagy részét.
Az API Management szolgáltatást érintő rendelkezésre állási problémák elhárításához bármikor készen kell állnia a szolgáltatás egy másik régióban való újraalakítására. A helyreállítási időkorláttól függően előfordulhat, hogy egy készenléti szolgáltatást egy vagy több régióban szeretne tartani. A helyreállítási pont célkitűzésének megfelelően megpróbálhatja az aktív szolgáltatással szinkronban tartani a konfigurációjukat és a tartalmaikat. Az API management biztonsági mentési és visszaállítási képességei biztosítják a vészhelyreállítási stratégia megvalósításához szükséges építőelemeket.
A biztonsági mentési és visszaállítási műveletek az API Management szolgáltatás konfigurációjának operatív környezetek közötti replikálásához is használhatók, például a fejlesztéshez és az előkészítéshez. Ügyeljen arra, hogy a futtatókörnyezeti adatok, például a felhasználók és az előfizetések is másolni fognak, ami nem mindig kívánatos.
Ez a cikk bemutatja, hogyan automatizálhatja az API Management-példány biztonsági mentési és visszaállítási műveleteit egy külső tárfiók használatával. Az itt látható lépések a Backup-AzApiManagement és a Restore-AzApiManagement Azure PowerShell-parancsmagokat, vagy az Api Management Service – Backup és Api Management Service – Rest API-k visszaállítása parancsmagokat használják.
Figyelmeztetés
30 nap után minden biztonsági másolat lejár. Ha a 30 napos lejárati időszak lejárta után próbál biztonsági másolatot készíteni, a visszaállítás egy Cannot restore: backup expired
üzenettel meghiúsul.
Fontos
A visszaállítási művelet nem módosítja a célszolgáltatás egyéni állomásnév-konfigurációját. Javasoljuk, hogy az aktív és a készenléti szolgáltatások esetében is ugyanazt az egyéni gazdagépnevet és TLS-tanúsítványt használja, hogy a visszaállítási művelet befejeződése után a forgalom egy egyszerű DNS CNAME-módosítással újra irányítható legyen a készenléti példányra.
Feljegyzés
Javasoljuk, hogy az Azure Az PowerShell modult használja az Azure-ral való interakcióhoz. Első lépésként tekintse meg az Azure PowerShell telepítését ismertető témakört. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.
Előfeltételek
EGY API Management-szolgáltatáspéldány. Ha nincs ilyenje, olvassa el az API Management szolgáltatáspéldány létrehozása című témakört.
Egy Azure-tárfiók. Ha nem rendelkezik ilyen fiókkal, olvassa el a Tárfiók létrehozása című témakört.
- Hozzon létre egy tárolót a tárfiókban a biztonsági mentési adatok tárolásához.
Az Azure PowerShell legújabb verziója, ha Azure PowerShell-parancsmagokat szeretne használni. Ha még nem tette meg, telepítse az Azure PowerShellt.
Tárfiók-hozzáférés konfigurálása
Biztonsági mentési vagy visszaállítási művelet futtatásakor konfigurálnia kell a tárfiókhoz való hozzáférést. Az API Management két tárolási hozzáférési mechanizmust támogat: egy Azure Storage hozzáférési kulcsot vagy egy API Management által felügyelt identitást.
Tárfiók hozzáférési kulcsának konfigurálása
Az Azure két 512 bites tárfiók hozzáférési kulcsot hoz létre minden tárfiókhoz. Ezekkel a kulcsokkal engedélyezheti a tárfiókban lévő adatokhoz való hozzáférést megosztott kulcsok engedélyezésén keresztül. A kulcsok megtekintéséhez, lekéréséhez és kezeléséhez lásd : Tárfiók hozzáférési kulcsainak kezelése.
Az API Management által felügyelt identitás konfigurálása
Feljegyzés
Az API Management által felügyelt identitás használata a tárolási műveletekhez a biztonsági mentés és visszaállítás során az API Management REST API-verziójában vagy újabb verzióiban 2021-04-01-preview
támogatott.
Engedélyezze a rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitást az API Managementhez az API Management-példányban.
- Ha engedélyezi a felhasználó által hozzárendelt felügyelt identitást, jegyezze fel az identitás ügyfél-azonosítóját.
- Ha biztonsági másolatot készít és visszaállít különböző API Management-példányokra, engedélyezze a felügyelt identitást a forrás- és a célpéldányokban is.
Rendelje hozzá az identitást a Storage Blob-adatok közreműködői szerepköréhez, amely a biztonsági mentéshez és visszaállításhoz használt tárfiókra terjed ki. A szerepkör hozzárendeléséhez használja az Azure Portalt vagy más Azure-eszközöket.
API Management szolgáltatás biztonsági mentése
Jelentkezzen be az Azure PowerShell-lel.
Az alábbi példákban:
- A myapim nevű API Management-példány az apimresourcegroup erőforráscsoportban található.
- A backupstorageaccount nevű tárfiók az erőforráscsoport storageresourcegroup-ban található. A tárfiók rendelkezik biztonsági másolatok nevű tárolóval.
- Létrejön egy ContosoBackup.apimbackup nevű biztonsági mentési blob.
Változók beállítása a PowerShellben:
$apiManagementName="myapim";
$apiManagementResourceGroup="apimresourcegroup";
$storageAccountName="backupstorageaccount";
$storageResourceGroup="storageresourcegroup";
$containerName="backups";
$blobName="ContosoBackup.apimbackup"
Hozzáférés tárelérési kulccsal
$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
Hozzáférés felügyelt identitással
Ha egy felügyelt identitást szeretne konfigurálni az API Management-példányban a tárfiók eléréséhez, olvassa el a cikk korábbi, felügyelt identitás konfigurálása című szakaszát.
Hozzáférés a rendszer által hozzárendelt felügyelt identitással
$storageContext = New-AzStorageContext -StorageAccountName $storageAccountName
Backup-AzApiManagement -ResourceGroupName $apiManagementResourceGroup -Name $apiManagementName `
-StorageContext $storageContext -TargetContainerName $containerName `
-TargetBlobName $blobName -AccessType "SystemAssignedManagedIdentity"
Hozzáférés felhasználó által hozzárendelt felügyelt identitással
Ebben a példában a myidentity nevű, felhasználó által hozzárendelt felügyelt identitás az erőforráscsoport identityresourcegroup-ban található.
$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
A biztonsági mentés egy hosszú ideig futó művelet, amely több percet is igénybe vehet. Ez idő alatt az API-átjáró továbbra is kezeli a kéréseket, de a szolgáltatás állapota frissítés.
API Management szolgáltatás visszaállítása
Figyelemfelhívás
Kerülje a szolgáltatáskonfiguráció (például API-k, szabályzatok, fejlesztői portál megjelenése) módosítását, amíg a visszaállítási művelet folyamatban van. A módosítások felülírhatók.
Az alábbi példákban
- A rendszer visszaállít egy myapim nevű API Management-példányt a ContosoBackup.apimbackup nevű biztonsági mentési blobból a tárfiók backupstorageaccount mappájában.
- A biztonsági mentési blob egy biztonsági másolatok nevű tárolóban található.
Változók beállítása a PowerShellben:
$apiManagementName="myapim";
$apiManagementResourceGroup="apimresourcegroup";
$storageAccountName="backupstorageaccount";
$storageResourceGroup="storageresourcegroup";
$containerName="backups";
$blobName="ContosoBackup.apimbackup"
Hozzáférés tárelérési kulccsal
$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
Hozzáférés felügyelt identitással
Ha egy felügyelt identitást szeretne konfigurálni az API Management-példányban a tárfiók eléréséhez, olvassa el a cikk korábbi, felügyelt identitás konfigurálása című szakaszát.
Hozzáférés a rendszer által hozzárendelt felügyelt identitással
$storageContext = New-AzStorageContext -StorageAccountName $storageAccountName
Restore-AzApiManagement -ResourceGroupName $apiManagementResourceGroup -Name $apiManagementName `
-StorageContext $storageContext -SourceContainerName $containerName `
-SourceBlobName $blobName -AccessType "SystemAssignedManagedIdentity"
Hozzáférés felhasználó által hozzárendelt felügyelt identitással
Ebben a példában a myidentity nevű, felhasználó által hozzárendelt felügyelt identitás az erőforráscsoport identityresourcegroup-ban található.
$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
A visszaállítás egy hosszú ideig futó művelet, amely akár 45 percet is igénybe vehet.
Megszorítások
- A biztonsági mentés visszaállítása csak a létrehozás pillanatától számított 30 napig garantált.
- Amíg a biztonsági mentés folyamatban van, kerülje a szolgáltatás felügyeleti változásait, például a tarifacsomagok frissítését vagy leminősítését, a tartománynév módosítását stb.
- Előfordulhat , hogy a szolgáltatáskonfiguráció módosításai (például API-k, szabályzatok és fejlesztői portál megjelenése) a biztonsági mentési művelet végrehajtása közben ki lesznek zárva a biztonsági mentésből, és elvesznek.
- A biztonsági mentés nem rögzíti az Azure Portal Elemzés ablakában megjelenő jelentésekben használt előre összesített naplóadatokat.
- A forrásközi erőforrás-megosztás (CORS) nem engedélyezhető a tárfiók blobszolgáltatásában.
- A visszaállítandó szolgáltatás tarifacsomagjának meg kell egyeznie a visszaállított biztonsági mentési szolgáltatás tarifacsomagjának.
Tárolási hálózatkezelési korlátozások
Ha a tárfiók engedélyezve van a tűzfalon, ajánlott az API Management-példány rendszer által hozzárendelt felügyelt identitását használni a fiókhoz való hozzáféréshez. Győződjön meg arról, hogy a tárfiók hozzáférést biztosít a megbízható Azure-szolgáltatásokhoz.
Mi nem készül biztonsági mentésről?
- Az elemzési jelentések létrehozásához használt használati adatok nem szerepelnek a biztonsági másolatban. Az Azure API Management REST API használatával rendszeresen lekérheti az elemzési jelentéseket a megőrzéshez.
- Egyéni tartomány TLS-/SSL-tanúsítványai .
- Egyéni hitelesítésszolgáltatói tanúsítványok, amelyek köztes vagy főtanúsítványokat tartalmaznak, amelyeket az ügyfél töltött fel.
- Virtuális hálózati integrációs beállítások.
- Felügyelt identitáskonfiguráció .
- Az Azure Monitor diagnosztikai konfigurációja.
- Protokollok és titkosítási beállítások.
- Fejlesztői portál tartalma.
A szolgáltatás biztonsági mentésének gyakorisága befolyásolja a helyreállítási pont célkitűzését. A minimálisra csökkentése érdekében javasoljuk, hogy az API Management szolgáltatás módosítása után rendszeres biztonsági mentéseket és igény szerinti biztonsági mentéseket hajtson végre.
Következő lépések
Tekintse meg a következő kapcsolódó erőforrásokat a biztonsági mentési/visszaállítási folyamathoz:
- Az API Management biztonsági mentésének és helyreállításának automatizálása a Logic Apps használatával
- Az Azure API Management áthelyezése régiók között
- Az API Management Premium szint támogatja a zónaredundanciát is, amely rugalmasságot és magas rendelkezésre állást biztosít egy adott Azure-régióban (helyen) lévő szolgáltatáspéldány számára.