Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird beschrieben, wie Sie Azure-Datenbank für PostgreSQL sichern – flexibler Server mit Azure CLI.
Voraussetzungen
Bevor Sie Azure-Datenbank für PostgreSQL sichern – Flexible Server, überprüfen Sie die unterstützten Szenarien und Einschränkungen für die Sicherung der Azure-Datenbank für PostgreSQL – Flexible Server.
Erstellen eines Backup-Tresors für PostgreSQL – Flexible Server-Backup
Der Sicherungstresor ist eine Speicherentität in Azure. Dadurch werden die Sicherungsdaten für neue von Azure Backup unterstützte Workloads gespeichert. Zum Beispiel Azure Database for PostgreSQL – Flexible Server, Blobs in einem Speicherkonto und Azure Disks. Sicherungstresore vereinfachen die Organisation Ihrer Sicherungsdaten und minimieren gleichzeitig den Verwaltungsaufwand. Sicherungstresore basieren auf dem Azure Resource Manager-Modell von Azure, das erweiterte Funktionen bietet, die das Schützen von Sicherungsdaten erleichtern.
Bevor Sie einen Sicherungstresor erstellen, wählen Sie die Speicherredundanz der Daten im Tresor aus. Anschließend erstellen Sie den Sicherungstresor mit der ausgewählten Speicherredundanz und dem angegebenen Speicherort.
In diesem Artikel erstellen wir einen Sicherungstresor TestBkpVault in der Region westus unter der Ressourcengruppe testBkpVaultRG. Verwenden Sie den az dataprotection vault create Befehl, um einen Backupspeicher zu erstellen. Weitere Informationen finden Sie unter Erstellen eines Sicherungstresors.
az dataprotection backup-vault create -g testBkpVaultRG --vault-name TestBkpVault -l westus --type SystemAssigned --storage-settings datastore-type="VaultStore" type="LocallyRedundant"
{
"eTag": null,
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/testBkpVaultRG/providers/Microsoft.DataProtection/BackupVaults/TestBkpVault",
"identity": {
"principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"type": "SystemAssigned"
},
"location": "westus",
"name": "TestBkpVault",
"properties": {
"provisioningState": "Succeeded",
"storageSettings": [
{
"datastoreType": "VaultStore",
"type": "LocallyRedundant"
}
]
},
"resourceGroup": "testBkpVaultRG",
"systemData": null,
"tags": null,
"type": "Microsoft.DataProtection/backupVaults"
}
Konfigurieren der Sicherung für PostgreSQL – Flexibler Server
Bevor Sie den Schutz für die Datenbank konfigurieren, stellen Sie sicher, dass Sie eine Sicherungsrichtlinie erstellen. Nachdem der Tresor und die Richtlinie erstellt wurden, schützen Sie die Azure-Datenbank für PostgreSQL – Flexible Server, indem Sie die folgenden Schritte ausführen:
- Abrufen der ARM-ID des zu schützenden flexiblen PostgreSQL-Servers
- Gewähren des Zugriffs auf den Sicherungstresor
- Vorbereiten der Sicherungskonfigurationsanforderung
Abrufen der ARM-ID des zu schützenden PostgreSQL-Flexible Servers
Rufen Sie die Azure Resource Manager ID (ARM ID) von PostgreSQL ab – Flexibler Server, der geschützt werden soll. Diese ID dient als Bezeichner der Datenbank. Nehmen wir ein Beispiel einer Datenbank namens empdb11 auf einem PostgreSQL - Flexible Server testposgresql, der in der Ressourcengruppe ossrg unter einem anderen Abonnement vorhanden ist.
Das folgende Beispiel verwendet bash.
ossId="/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/ossrg/providers/Microsoft.DBforPostgreSQL/flexibleServers/archive-postgresql-ccy/databases/empdb11"
Gewähren des Zugriffs auf den Sicherungstresor
Der Sicherungstresor muss eine Verbindung mit PostgreSQL – Flexibler Server herstellen und dann über die im Schlüsseltresor enthaltenen Schlüssel auf die Datenbank zugreifen. Deshalb erfordert es Zugriff auf PostgreSQL, Flexible Server, und den Schlüsseltresor. Gewähren Sie der verwalteten Dienstidentität (Managed-Service Identity, MSI) des Sicherungstresors Zugriff.
Überprüfen Sie die Berechtigungen, die für die verwaltete Dienstidentität (MSI) des Sicherungstresors für PostgreSQL – Flexibler Server und die Azure Key Vault-Instanz, in der die Schlüssel für die Datenbank gespeichert sind, erforderlich sind.
Vorbereiten der Sicherungskonfigurationsanforderung
Nachdem alle relevanten Berechtigungen festgelegt wurden, konfigurieren Sie die Sicherung, indem Sie die folgenden Befehle ausführen:
Bereiten Sie die erforderlichen Anforderung mithilfe des relevanten Tresors, der Richtlinie und der Datenbank mit PostgreSQL – Flexibler Server mit dem Befehl
az dataprotection backup-instance initializevor.az dataprotection backup-instance initialize --datasource-id $ossId --datasource-type AzureDatabaseForPostgreSQLFlexibleServer -l <vault-location> --policy-id <policy_arm_id> --secret-store-type AzureKeyVault --secret-store-uri $keyURI > OSSBkpInstance.JSONSenden Sie die Anforderung, um die Datenbank mithilfe des
az dataprotection backup-instance createBefehls zu schützen.az dataprotection backup-instance create --resource-group testBkpVaultRG --vault-name TestBkpVault TestBkpvault --backup-instance .\OSSBkpInstance.JSON
Ausführen einer On-Demand-Sicherung für PostgreSQL – Flexibler Server
Geben Sie eine Aufbewahrungsregel an, während Sie die Sicherung auslösen. Um die Aufbewahrungsregeln anzuzeigen, wechseln Sie zur JSON-Datei der Richtlinie für Aufbewahrungsregeln. Im folgenden Beispiel gibt es zwei Aufbewahrungsregeln mit den Namen Standard und Monatlich. Verwenden wir die Monatliche Regel für die On-Demand-Sicherung.
az dataprotection backup-policy show -g ossdemorg --vault-name ossdemovault-1 --subscription e3d2d341-4ddb-4c5d-9121-69b7e719485e --name osspol5
{
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e-69b7e719485e/resourceGroups/ossdemorg/providers/Microsoft.DataProtection/backupVaults/ossdemovault-1/backupPolicies/osspol5",
"name": "osspol5",
"properties": {
"datasourceTypes": [
" Microsoft.DBforPostgreSQL/flexibleServers/databases"
],
"objectType": "BackupPolicy",
"policyRules": [
{
"backupParameters": {
"backupType": "Full",
"objectType": "AzureBackupParams"
},
"dataStore": {
"dataStoreType": "VaultStore",
"objectType": "DataStoreInfoBase"
},
"name": "BackupWeekly",
"objectType": "AzureBackupRule",
"trigger": {
"objectType": "ScheduleBasedTriggerContext",
"schedule": {
"repeatingTimeIntervals": [
"R/2020-04-04T20:00:00+00:00/P1W",
"R/2020-04-01T20:00:00+00:00/P1W"
],
"timeZone": "UTC"
},
"taggingCriteria": [
{
"criteria": [
{
"absoluteCriteria": [
"FirstOfMonth"
],
"daysOfMonth": null,
"daysOfTheWeek": null,
"monthsOfYear": null,
"objectType": "ScheduleBasedBackupCriteria",
"scheduleTimes": null,
"weeksOfTheMonth": null
}
],
"isDefault": false,
"tagInfo": {
"eTag": null,
"id": "Monthly_",
"tagName": "Monthly"
},
"taggingPriority": 15
},
{
"criteria": null,
"isDefault": true,
"tagInfo": {
"eTag": null,
"id": "Default_",
"tagName": "Default"
},
"taggingPriority": 99
}
]
}
},
{
"isDefault": false,
"lifecycles": [
{
"deleteAfter": {
"duration": "P10Y",
"objectType": "AbsoluteDeleteOption"
},
"sourceDataStore": {
"dataStoreType": "VaultStore",
"objectType": "DataStoreInfoBase"
},
"targetDataStoreCopySettings": []
}
],
"name": "Monthly",
"objectType": "AzureRetentionRule"
},
{
"isDefault": true,
"lifecycles": [
{
"deleteAfter": {
"duration": "P1Y",
"objectType": "AbsoluteDeleteOption"
},
"sourceDataStore": {
"dataStoreType": "VaultStore",
"objectType": "DataStoreInfoBase"
},
"targetDataStoreCopySettings": []
}
],
"name": "Default",
"objectType": "AzureRetentionRule"
}
]
},
"resourceGroup": "ossdemorg",
"systemData": null,
"type": "Microsoft.DataProtection/backupVaults/backupPolicies"
}
Verwenden Sie den az dataprotection backup-instance adhoc-backup Befehl, um eine On-Demand-Sicherung auszulösen.
az dataprotection backup-instance adhoc-backup --name "ossrg-empdb11" --rule-name "Monthly" --resource-group testBkpVaultRG --vault-name TestBkpVault
Nachverfolgen von Aufträgen für PostgreSQL – Flexible Server backup
Verfolgen Sie alle Aufträge mithilfe des az dataprotection job list Befehls. Sie können alle Aufträge auflisten und ein bestimmtes Auftragsdetail abrufen.
Sie können auch „Az.ResourceGraph“ verwenden, um alle Aufträge für alle Backup-Tresore nachzuverfolgen. Verwenden Sie den Befehl az dataprotection job list-from-resourcegraph, um die relevanten Aufträge aus den verschiedenen Sicherungstresoren abzurufen.
az dataprotection job list-from-resourcegraph --datasource-type AzureDatabaseForPostgreSQLFlexibleServer --status Completed