Tutorial: Gerir bases de dados SAP HANA numa VM do Azure com a CLI do Azure
A CLI do Azure é utilizada para criar e gerir recursos do Azure a partir da Linha de Comandos ou através de scripts. Esta documentação detalha como gerir uma base de dados SAP HANA com cópia de segurança na VM do Azure, tudo com a CLI do Azure. Também pode executar estes passos com o portal do Azure.
Utilize o Azure Cloud Shell para executar comandos da CLI.
No final deste tutorial, será capaz de:
- Monitorizar tarefas de cópia de segurança e restauro
- Proteger novas bases de dados adicionadas a uma instância do SAP HANA
- Alterar a política
- Parar proteção
- Retomar a proteção
Se utilizou a cópia de segurança de uma base de dados SAP HANA no Azure com a CLI para fazer uma cópia de segurança da base de dados SAP HANA, está a utilizar os seguintes recursos:
- um grupo de recursos com o nome saphanaResourceGroup
- um cofre com o nome saphanaVault
- contentor protegido com o nome VMAppContainer; Computação;saphanaResourceGroup;saphanaVM
- base de dados/item com o nome saphanadatabase;hxe;hxe
- recursos na região westus2
A CLI do Azure facilita a gestão de uma base de dados SAP HANA em execução numa VM do Azure com uma cópia de segurança com Azure Backup. Este tutorial detalha cada uma das operações de gestão.
Nota
Veja a matriz de suporte da cópia de segurança sap HANA para saber mais sobre as configurações e cenários suportados.
Monitorizar tarefas de cópia de segurança e restauro
Para monitorizar tarefas concluídas ou atualmente em execução (cópia de segurança ou restauro), utilize o cmdlet az backup job list . A CLI também lhe permite suspender uma tarefa atualmente em execução ou aguardar até que uma tarefa seja concluída.
az backup job list --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--output table
A saída será semelhante à seguinte:
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
Alterar política
Para alterar a política subjacente à configuração da cópia de segurança do SAP HANA, utilize o cmdlet az backup policy set . O parâmetro de nome neste cmdlet refere-se ao item de cópia de segurança cuja política queremos alterar. Neste tutorial, vamos substituir a política da nossa base de dados SAP HANA saphanadatabase;hxe;hxe por uma nova política newsaphanaPolicy. Podem ser criadas novas políticas com o cmdlet 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 \
A saída deverá ter o seguinte aspeto:
Name Resource Group
------------------------------------- --------------
cb110094-9b15-4c55-ad45-6899200eb8dd SAPHANA
Criar política de cópia de segurança incremental
Para criar uma política de cópia de segurança incremental, execute o comando az backup policy create com os seguintes parâmetros:
- --backup-management-type – Carga de Trabalho do Azure
- --workload-type - SAPHana
- --name – Nome da política
- --policy - ficheiro JSON com detalhes adequados para agendamento e retenção
- --resource-group - Grupo de recursos do cofre
- --vault-name – Nome do cofre
Exemplo:
az backup policy create --resource-group saphanaResourceGroup --vault-name saphanaVault --name sappolicy --backup-management-type AzureWorkload --policy sappolicy.json --workload-type SAPHana
JSON de exemplo (sappolicy.json):
"eTag": null,
"id": "/Subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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"
}
Assim que a política for criada com êxito, a saída do comando apresentará o JSON da política que passou como um parâmetro durante a execução do comando.
Pode modificar a secção seguinte da política para especificar a frequência e retenção de cópias de segurança pretendidas para cópias de segurança incrementais.
Por exemplo:
{
"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
}
}
Exemplo:
Se quiser ter cópias de segurança incrementais apenas no sábado e mantê-las durante 60 dias, faça as seguintes alterações na política:
- Retenção de atualização Contagem dedurações para 60 dias
- Especifique apenas Sábado como 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
}
}
Proteger novas bases de dados adicionadas a uma instância do SAP HANA
Registar uma instância do SAP HANA num cofre dos Serviços de Recuperação deteta automaticamente todas as bases de dados nesta instância.
No entanto, nos casos em que as novas bases de dados são adicionadas à instância do SAP HANA mais tarde, utilize o cmdlet az backup protectable-item initialize . Este cmdlet deteta as novas bases de dados adicionadas.
az backup protectable-item initialize --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
--workload-type SAPHANA
Em seguida, utilize o cmdlet az backup protectable-item list para listar todas as bases de dados que foram detetadas na instância do SAP HANA. No entanto, esta lista exclui as bases de dados nas quais a cópia de segurança já foi configurada. Depois de detetar a cópia de segurança da base de dados, veja Ativar a cópia de segurança na base de dados SAP HANA.
az backup protectable-item list --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--workload-type SAPHANA \
--output table
A nova base de dados que pretende criar uma cópia de segurança será apresentada nesta lista, que terá o seguinte aspeto:
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
Parar a proteção de uma base de dados SAP HANA
Pode parar de proteger uma base de dados SAP HANA de várias formas:
- Pare todas as tarefas de cópia de segurança futuras e elimine todos os pontos de recuperação.
- Pare todas as tarefas de cópia de segurança futuras e deixe os pontos de recuperação intactos.
Se optar por deixar pontos de recuperação, tenha estes detalhes em mente:
- Todos os pontos de recuperação permanecerão intactos para sempre e toda a poda irá parar na proteção de paragem com dados de retenção.
- Será cobrado pela instância protegida e pelo armazenamento consumido.
- Se eliminar uma origem de dados sem parar as cópias de segurança, as novas cópias de segurança falharão.
Vamos analisar cada uma das formas de parar a proteção mais detalhadamente.
Parar a proteção com reter dados
Para parar a proteção com dados de retenção, utilize o cmdlet az backup protection para desativar .
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
A saída deverá ter o seguinte aspeto:
Name ResourceGroup
------------------------------------ ---------------
g0f15dae-7cac-4475-d833-f52c50e5b6c3 saphanaResourceGroup
Para verificar o estado desta operação, utilize o cmdlet az backup job show .
Parar a proteção sem reter dados
Para parar a proteção sem reter dados, utilize o cmdlet az backup protection .
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
A saída deverá ter o seguinte aspeto:
Name ResourceGroup
------------------------------------ ---------------
g0f15dae-7cac-4475-d833-f52c50e5b6c3 saphanaResourceGroup
Para verificar o estado desta operação, utilize o cmdlet az backup job show .
Retomar a proteção
Quando parar a proteção para a base de dados SAP HANA com dados de retenção, pode retomar a proteção mais tarde. Se não reter os dados de cópia de segurança, não poderá retomar a proteção.
Para retomar a proteção, utilize o cmdlet 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
A saída deverá ter o seguinte aspeto:
Name ResourceGroup
------------------------------------ ---------------
b2a7f108-1020-4529-870f-6c4c43e2bb9e saphanaResourceGroup
Para verificar o estado desta operação, utilize o cmdlet az backup job show .
Passos seguintes
Para saber como criar uma cópia de segurança de uma base de dados SAP HANA em execução na VM do Azure com o portal do Azure, veja Cópia de segurança de bases de dados SAP HANA em VMs do Azure
Para saber como gerir uma base de dados SAP HANA com cópias de segurança em execução na VM do Azure com o portal do Azure, veja Gerir Bases de dados SAP HANA com Cópia de Segurança na VM do Azure