Tutoriel : Gérer des bases de données SAP HANA sur une machine virtuelle Azure à l’aide d’Azure CLI
Azure CLI permet de créer et de gérer des ressources Azure à partir de la ligne de commande ou par le biais de scripts. Ce document explique comment gérer une base de données SAP HANA sauvegardée sur une machine virtuelle Azure à l’aide d’Azure CLI. Vous pouvez également effectuer ces étapes à l’aide du Portail Azure.
Utilisez Azure Cloud Shell pour exécuter les commandes CLI.
À la fin de ce tutoriel, vous serez en mesure d’effectuer les opérations suivantes :
- Superviser des travaux de sauvegarde et de restauration
- Protéger les nouvelles bases de données ajoutées à une instance de SAP HANA
- Modifier la stratégie
- Arrêter la protection
- Reprendre la protection
Si vous avez appliqué la procédure de l’article Sauvegarder une base de données SAP HANA dans Azure à l’aide de l’interface CLI pour sauvegarder votre base de données SAP HANA, vous utiliserez les ressources suivantes :
- Un groupe de ressources nommé saphanaResourceGroup
- Un coffre nommé saphanaVault
- Un conteneur protégé nommé VMAppContainer;Compute;saphanaResourceGroup;saphanaVM
- Un élément/base de données sauvegardé nommé saphanadatabase;hxe;hxe
- Des ressources dans la région westus2
Azure CLI facilite la gestion d’une base de données SAP HANA s’exécutant sur une machine virtuelle Azure sauvegardée à l’aide de Sauvegarde Azure. Ce tutoriel décrit en détail chacune des opérations de gestion.
Notes
Consultez la matrice de prise en charge des sauvegardes SAP HANA pour en savoir plus sur les configurations et les scénarios pris en charge.
Superviser des travaux de sauvegarde et de restauration
Pour superviser les travaux terminés ou en cours d’exécution (sauvegarde ou restauration), utilisez l’applet de commande az backup job list. L’interface CLI vous permet également d’interrompre un travail en cours d’exécution ou d’attendre qu’un travail se termine.
az backup job list --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--output table
Vous obtenez un résultat semblable à ce qui suit :
Name Operation Status Item Name Start Time UTC
------------------------------------ --------------- --------- ---------- -------------------
e0f15dae-7cac-4475-a833-f52c50e5b6c3 ConfigureBackup Completed hxe 2019-12-03T03:09:210831+00:00
ccdb4dce-8b15-47c5-8c46-b0985352238f Backup (Full) Completed hxe [hxehost] 2019-12-01T10:30:58.867489+00:00
4980af91-1090-49a6-ab96-13bc905a5282 Backup (Differential) Completed hxe [hxehost] 2019-12-01T10:36:00.563909+00:00
F7c68818-039f-4a0f-8d73-e0747e68a813 Restore (Log) Completed hxe [hxehost] 2019-12-03T05:44:51.081607+00:00
Modifier la stratégie
Pour modifier la stratégie sous-jacente à la configuration de sauvegarde SAP HANA, utilisez l’applet de commande az backup policy set. Le paramètre name de cette applet de commande fait référence à l’élément de sauvegarde dont vous souhaitez modifier la stratégie. Pour ce tutoriel, nous allons remplacer la stratégie de notre base de données SAP HANA saphanadatabase;hxe;hxe par une nouvelle stratégie newsaphanaPolicy. Vous pouvez créer de nouvelles stratégies à l’aide de l’applet de commande az backup policy create.
az backup item set policy --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
--policy-name newsaphanaPolicy \
--name saphanadatabase;hxe;hxe \
La sortie doit ressembler à ceci :
Name Resource Group
------------------------------------- --------------
cb110094-9b15-4c55-ad45-6899200eb8dd SAPHANA
Créer une stratégie de sauvegarde incrémentielle
Pour créer une stratégie de sauvegarde incrémentielle, exécutez la commande az backup policy create avec les paramètres suivants :
- --backup-management-type : charge de travail Azure
- --workload-type : SAPHana
- --name : nom de la stratégie
- --policy : fichier JSON contenant les détails appropriés pour la planification et la conservation
- --resource-group : groupe de ressources du coffre
- --vault-name : nom du coffre
Exemple :
az backup policy create --resource-group saphanaResourceGroup --vault-name saphanaVault --name sappolicy --backup-management-type AzureWorkload --policy sappolicy.json --workload-type SAPHana
Exemple JSON (sappolicy.json) :
"eTag": null,
"id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/saphanaResourceGroup/providers/Microsoft.RecoveryServices/vaults/saphanaVault/backupPolicies/sappolicy",
"location": null,
"name": "sappolicy",
"properties": {
"backupManagementType": "AzureWorkload",
"makePolicyConsistent": null,
"protectedItemsCount": 0,
"settings": {
"isCompression": false,
"issqlcompression": false,
"timeZone": "UTC"
},
"subProtectionPolicy": [
{
"policyType": "Full",
"retentionPolicy": {
"dailySchedule": null,
"monthlySchedule": {
"retentionDuration": {
"count": 60,
"durationType": "Months"
},
"retentionScheduleDaily": null,
"retentionScheduleFormatType": "Weekly",
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Sunday"
],
"weeksOfTheMonth": [
"First"
]
},
"retentionTimes": [
"2021-01-19T00:30:00+00:00"
]
},
"retentionPolicyType": "LongTermRetentionPolicy",
"weeklySchedule": {
"daysOfTheWeek": [
"Sunday"
],
"retentionDuration": {
"count": 104,
"durationType": "Weeks"
},
"retentionTimes": [
"2021-01-19T00:30:00+00:00"
]
},
"yearlySchedule": {
"monthsOfYear": [
"January"
],
"retentionDuration": {
"count": 10,
"durationType": "Years"
},
"retentionScheduleDaily": null,
"retentionScheduleFormatType": "Weekly",
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Sunday"
],
"weeksOfTheMonth": [
"First"
]
},
"retentionTimes": [
"2021-01-19T00:30:00+00:00"
]
}
},
"schedulePolicy": {
"schedulePolicyType": "SimpleSchedulePolicy",
"scheduleRunDays": [
"Sunday"
],
"scheduleRunFrequency": "Weekly",
"scheduleRunTimes": [
"2021-01-19T00:30:00+00:00"
],
"scheduleWeeklyFrequency": 0
}
},
{
"policyType": "Incremental",
"retentionPolicy": {
"retentionDuration": {
"count": 30,
"durationType": "Days"
},
"retentionPolicyType": "SimpleRetentionPolicy"
},
"schedulePolicy": {
"schedulePolicyType": "SimpleSchedulePolicy",
"scheduleRunDays": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday"
],
"scheduleRunFrequency": "Weekly",
"scheduleRunTimes": [
"2017-03-07T02:00:00+00:00"
],
"scheduleWeeklyFrequency": 0
}
},
{
"policyType": "Log",
"retentionPolicy": {
"retentionDuration": {
"count": 15,
"durationType": "Days"
},
"retentionPolicyType": "SimpleRetentionPolicy"
},
"schedulePolicy": {
"scheduleFrequencyInMins": 120,
"schedulePolicyType": "LogSchedulePolicy"
}
}
],
"workLoadType": "SAPHanaDatabase"
},
"resourceGroup": "saphanaResourceGroup",
"tags": null,
"type": "Microsoft.RecoveryServices/vaults/backupPolicies"
}
Une fois la stratégie créée, la sortie de la commande affiche la stratégie JSON que vous avez transmise en tant que paramètre lors de l’exécution de la commande.
Vous pouvez modifier la section suivante de la stratégie pour spécifier la fréquence de sauvegarde souhaitée et la conservation des sauvegardes incrémentielles.
Par exemple :
{
"policyType": "Incremental",
"retentionPolicy": {
"retentionDuration": {
"count": 30,
"durationType": "Days"
},
"retentionPolicyType": "SimpleRetentionPolicy"
},
"schedulePolicy": {
"schedulePolicyType": "SimpleSchedulePolicy",
"scheduleRunDays": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday"
],
"scheduleRunFrequency": "Weekly",
"scheduleRunTimes": [
"2017-03-07T02:00:00+00:00"
],
"scheduleWeeklyFrequency": 0
}
}
Exemple :
Si vous souhaitez effectuer des sauvegardes incrémentielles uniquement le samedi et les conserver pendant 60 jours, Modifiez la stratégie comme suit :
- Mettez à jour la valeur retentionDuration à 60 jours.
- Spécifiez uniquement Saturday comme ScheduleRunDays.
{
"policyType": "Incremental",
"retentionPolicy": {
"retentionDuration": {
"count": 60,
"durationType": "Days"
},
"retentionPolicyType": "SimpleRetentionPolicy"
},
"schedulePolicy": {
"schedulePolicyType": "SimpleSchedulePolicy",
"scheduleRunDays": [
"Saturday"
],
"scheduleRunFrequency": "Weekly",
"scheduleRunTimes": [
"2017-03-07T02:00:00+00:00"
],
"scheduleWeeklyFrequency": 0
}
}
Protéger les nouvelles bases de données ajoutées à une instance de SAP HANA
L’inscription d’une instance de SAP HANA auprès d’un coffre Recovery Services entraîne la découverte automatique de toutes les bases de données sur cette instance.
Toutefois, dans les cas où de nouvelles bases de données sont ajoutées ultérieurement à l’instance de SAP HANA, utilisez l’applet de commande az backup protectable-item initialize. Cette applet de commande découvre les nouvelles bases de données ajoutées.
az backup protectable-item initialize --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
--workload-type SAPHANA
Utilisez ensuite l’applet de commande az backup protectable-item list pour lister toutes les bases de données qui ont été découvertes sur votre instance de SAP HANA. Cette liste exclut toutefois les bases de données sur lesquelles la sauvegarde a déjà été configurée. Une fois la base de données à sauvegarder découverte, consultez Activer la sauvegarde sur une base de données SAP HANA.
az backup protectable-item list --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--workload-type SAPHANA \
--output table
La base de données que vous souhaitez sauvegarder figurera dans cette liste, qui ressemblera à ceci :
Name Protectable Item Type ParentName ServerName IsProtected
--------------------------- ---------------------- ------------ ----------- ------------
saphanasystem;hxe SAPHanaSystem HXE hxehost NotProtected
saphanadatabase;hxe;systemdb SAPHanaDatabase HXE hxehost NotProtected
saphanadatabase;hxe;newhxe SAPHanaDatabase HXE hxehost NotProtected
Arrêter la protection d’une base de données SAP HANA
Vous pouvez arrêter la protection d’une base de données SAP HANA de deux manières :
- Arrêter tous les travaux de sauvegarde à venir et supprimer tous les points de récupération.
- Arrêter tous les travaux de sauvegarde à venir, mais conserver les points de récupération.
Si vous choisissez de conserver les points de récupération, gardez à l’esprit les considérations suivantes :
- Tous les points de récupération resteront intacts et toutes les opérations de nettoyage s’arrêteront à l’arrêt de la protection avec données conservées.
- Vous serez facturé pour l’instance protégée et le stockage utilisé.
- Si vous supprimez une source de données sans arrêter les sauvegardes, les nouvelles sauvegardes échouent.
Examinons chacun des moyens d’arrêter la protection plus en détail.
Arrêter la protection avec données conservées
Pour arrêter la protection en conservant les données, utilisez l’applet de commande az backup protection disable.
az backup protection disable --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
--item-name saphanadatabase;hxe;hxe \
--workload-type SAPHANA \
--output table
La sortie doit ressembler à ceci :
Name ResourceGroup
------------------------------------ ---------------
g0f15dae-7cac-4475-d833-f52c50e5b6c3 saphanaResourceGroup
Pour vérifier l’état de cette opération, utilisez l’applet de commande az backup job show.
Arrêter la protection sans conserver les données
Pour arrêter la protection sans conserver les données, utilisez l’applet de commande az backup protection disable.
az backup protection disable --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
--item-name saphanadatabase;hxe;hxe \
--workload-type SAPHANA \
--delete-backup-data true \
--output table
La sortie doit ressembler à ceci :
Name ResourceGroup
------------------------------------ ---------------
g0f15dae-7cac-4475-d833-f52c50e5b6c3 saphanaResourceGroup
Pour vérifier l’état de cette opération, utilisez l’applet de commande az backup job show.
Reprendre la protection
Quand vous arrêtez la protection de la base de données SAP HANA en conservant les données, vous pouvez reprendre la protection ultérieurement. Si vous ne conservez pas les données sauvegardées, vous ne pourrez pas reprendre la protection.
Pour reprendre la protection, utilisez l’applet de commande az backup protection resume.
az backup protection resume --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
--policy-name saphanaPolicy \
--output table
La sortie doit ressembler à ceci :
Name ResourceGroup
------------------------------------ ---------------
b2a7f108-1020-4529-870f-6c4c43e2bb9e saphanaResourceGroup
Pour vérifier l’état de cette opération, utilisez l’applet de commande az backup job show.
Étapes suivantes
Pour découvrir comment sauvegarder une base de données SAP HANA exécutée sur une machine virtuelle Azure à l’aide du portail Azure, consultez Sauvegarder des bases de données SAP HANA sur des machines virtuelles Azure.
Pour découvrir comment gérer une base de données SAP HANA sauvegardée exécutée sur une machine virtuelle Azure à l’aide du portail Azure, consultez Gérer des bases de données SAP HANA sauvegardées sur des machines virtuelles Azure.