Öğretici: Azure CLI kullanarak Azure VM'deki SAP HANA veritabanlarını yönetme
Azure CLI, Komut Satırı'ndan veya betikler aracılığıyla Azure kaynakları oluşturmak ve yönetmek için kullanılır. Bu belgede, Azure CLI kullanarak Azure VM'de yedeklenmiş sap HANA veritabanının nasıl yönetileceğinin ayrıntıları açıklanır. Bu adımları Azure portal kullanarak da gerçekleştirebilirsiniz.
CLI komutlarını çalıştırmak için Azure Cloud Shell kullanın.
Bu öğreticinin sonunda şunları yapabileceksiniz:
- Yedekleme ve geri yükleme işlerini izleme
- SAP HANA örneğine eklenen yeni veritabanlarını koruma
- İlkeyi değiştirme
- Korumayı durdurma
- Korumayı sürdürme
SAP HANA veritabanınızı yedeklemek için CLI kullanarak Azure'da SAP HANA veritabanını yedekleme seçeneğini kullandıysanız aşağıdaki kaynakları kullanıyorsunuz demektir:
- saphanaResourceGroup adlı bir kaynak grubu
- saphanaVault adlı bir kasa
- VMAppContainer adlı korumalı kapsayıcı; İşlem;saphanaResourceGroup;saphanaVM
- yedeklenen veritabanı/saphanadatabase;hxe;hxe adlı öğe
- westus2 bölgesindeki kaynaklar
Azure CLI, Azure Backup kullanılarak yedeklenen bir Azure VM üzerinde çalışan SAP HANA veritabanını yönetmeyi kolaylaştırır. Bu öğretici, yönetim işlemlerinin her birini ayrıntılı olarak açıklar.
Not
Desteklenen yapılandırmalar ve senaryolar hakkında daha fazla bilgi edinmek için SAP HANA yedekleme destek matrisine bakın.
Yedekleme ve geri yükleme işlerini izleme
Tamamlanan veya çalışmakta olan işleri (yedekleme veya geri yükleme) izlemek için az backup job list cmdlet'ini kullanın. CLI, çalışmakta olan bir işi askıya almanızı veya bir iş tamamlanana kadar beklemenizi de sağlar.
az backup job list --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--output table
Çıkış şuna benzer olacaktır:
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
İlkeyi değiştirme
SAP HANA yedekleme yapılandırmasını temel alan ilkeyi değiştirmek için az backup policy set cmdlet'ini kullanın. Bu cmdlet'teki ad parametresi, ilkesini değiştirmek istediğimiz yedekleme öğesine başvurur. Bu öğreticide SAP HANA veritabanı saphanadatabase;hxe;hxe ilkemizi yeni bir newsaphanaPolicy ilkesiyle değiştireceğiz. Yeni ilkeler az backup policy create cmdlet'i kullanılarak oluşturulabilir.
az backup item set policy --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
--policy-name newsaphanaPolicy \
--name saphanadatabase;hxe;hxe \
Çıkış şu şekilde görünmelidir:
Name Resource Group
------------------------------------- --------------
cb110094-9b15-4c55-ad45-6899200eb8dd SAPHANA
Artımlı yedekleme ilkesi oluşturma
Artımlı yedekleme ilkesi oluşturmak için az backup policy create komutunu aşağıdaki parametrelerle yürütür:
- --backup-management-type – Azure İş Yükü
- --workload-type - SAPHana
- --name – İlkenin adı
- --policy - Zamanlama ve saklama için uygun ayrıntıları içeren JSON dosyası
- --resource-group - Kasanın kaynak grubu
- --vault-name – Kasanın adı
Örnek:
az backup policy create --resource-group saphanaResourceGroup --vault-name saphanaVault --name sappolicy --backup-management-type AzureWorkload --policy sappolicy.json --workload-type SAPHana
Örnek 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"
}
İlke başarıyla oluşturulduktan sonra komutun çıktısı, komutu yürütürken parametre olarak iletmiş olduğunuz ilke JSON'unu görüntüler.
Artımlı yedeklemeler için istenen yedekleme sıklığını ve saklamayı belirtmek üzere ilkenin aşağıdaki bölümünü değiştirebilirsiniz.
Örnek:
{
"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
}
}
Örnek:
Artımlı yedeklemelerin yalnızca Cumartesi günü olmasını ve 60 gün boyunca saklanmasını istiyorsanız, ilkede aşağıdaki değişiklikleri yapın:
- Saklamayı güncelleştirmeDuration count to 60 days
- ScheduleRunDays olarak yalnızca Cumartesi değerini belirtin
{
"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
}
}
SAP HANA örneğine eklenen yeni veritabanlarını koruma
Bir SAP HANA örneğinin Kurtarma Hizmetleri kasasına kaydedilmesi , bu örnekteki tüm veritabanlarını otomatik olarak bulur.
Ancak, SAP HANA örneğine daha sonra yeni veritabanları eklendiğinde az backup protectable-item initialize cmdlet'ini kullanın. Bu cmdlet eklenen yeni veritabanlarını bulur.
az backup protectable-item initialize --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
--workload-type SAPHANA
Ardından az backup protectable-item list cmdlet'ini kullanarak SAP HANA örneğinizde bulunan tüm veritabanlarını listeleyin. Ancak bu liste, yedeklemenin zaten yapılandırılmış olduğu veritabanlarını dışlar. Yedeklenecek veritabanı bulunduktan sonra SAP HANA veritabanında yedeklemeyi etkinleştirme konusuna bakın.
az backup protectable-item list --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--workload-type SAPHANA \
--output table
Yedeklemek istediğiniz yeni veritabanı aşağıdaki gibi görünecektir:
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
SAP HANA veritabanı için korumayı durdurma
SAP HANA veritabanını korumayı birkaç yolla durdurabilirsiniz:
- Gelecekteki tüm yedekleme işlerini durdurun ve tüm kurtarma noktalarını silin.
- Gelecekteki tüm yedekleme işlerini durdurun ve kurtarma noktalarını olduğu gibi bırakın.
Kurtarma noktalarından ayrılmayı seçerseniz şu ayrıntıları göz önünde bulundurun:
- Tüm kurtarma noktaları sonsuza kadar olduğu gibi kalır ve verileri koruyarak tüm ayıklamalar korumayı durdurur.
- Korumalı örnek ve kullanılan depolama alanı için ücretlendirilirsiniz.
- Yedeklemeleri durdurmadan bir veri kaynağını silerseniz yeni yedeklemeler başarısız olur.
Şimdi korumayı durdurmanın her bir yolunu daha ayrıntılı olarak inceleyelim.
Verileri bekleterek korumayı durdurun
Verileri tutarak korumayı durdurmak için az backup protection disable cmdlet'ini kullanın.
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
Çıkış şu şekilde görünmelidir:
Name ResourceGroup
------------------------------------ ---------------
g0f15dae-7cac-4475-d833-f52c50e5b6c3 saphanaResourceGroup
Bu işlemin durumunu denetlemek için az backup job show cmdlet'ini kullanın.
Verileri saklamadan korumayı durdurma
Verileri saklamadan korumayı durdurmak için az backup protection disable cmdlet'ini kullanın.
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
Çıkış şu şekilde görünmelidir:
Name ResourceGroup
------------------------------------ ---------------
g0f15dae-7cac-4475-d833-f52c50e5b6c3 saphanaResourceGroup
Bu işlemin durumunu denetlemek için az backup job show cmdlet'ini kullanın.
Korumayı sürdürme
Verileri tutarak SAP HANA veritabanı için korumayı durdurduğunuzda, daha sonra korumayı sürdürebilirsiniz. Yedeklenen verileri saklamazsanız korumayı sürdüremezsiniz.
Korumayı sürdürmek için az backup protection resume cmdlet'ini kullanın.
az backup protection resume --resource-group saphanaResourceGroup \
--vault-name saphanaVault \
--container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
--policy-name saphanaPolicy \
--output table
Çıkış şu şekilde görünmelidir:
Name ResourceGroup
------------------------------------ ---------------
b2a7f108-1020-4529-870f-6c4c43e2bb9e saphanaResourceGroup
Bu işlemin durumunu denetlemek için az backup job show cmdlet'ini kullanın.
Sonraki adımlar
Azure portal kullanarak Azure VM üzerinde çalışan bir SAP HANA veritabanını yedeklemeyi öğrenmek için Bkz. Azure VM'lerinde SAP HANA veritabanlarını yedekleme
Azure portal kullanarak Azure VM üzerinde çalışan yedeklenmiş SAP HANA veritabanını yönetmeyi öğrenmek için bkz. Azure VM'de Yedeklenen SAP HANA veritabanlarını yönetme