Резервное копирование управляемых дисков Azure с помощью Azure PowerShell
Эта статья содержит сведения о резервном копировании управляемого диска Azure с помощью Azure PowerShell.
В этой статье вы узнаете, как выполнять следующие задачи.
создание хранилища Azure Backup;
создание политики архивации;
настройка резервного копирования диска Azure;
Выполнение задания резервного копирования по запросу
Сведения о доступности регионов, поддерживаемых сценариях и ограничениях для резервного копирования дисков Azure см. в таблице поддержки.
создание хранилища Azure Backup;
Хранилище Azure Backup — это объект хранения Azure, который содержит данные резервных копий для различных рабочих нагрузок новых типов, поддерживаемых в Azure Backup, таких как серверы БД Azure для PostgreSQL и Диски Azure. Они упрощают организацию данных резервного копирования и одновременно снижают накладные затраты на управление. Хранилища резервных копий основаны на модели Azure Resource Manager в экосистеме Azure, которая предоставляет расширенные возможности для защиты данных, резервная копия которых создается.
Перед созданием хранилища службы архивации выберите избыточность хранилища данных в хранилище. Затем перейдите к созданию хранилища службы архивации с указанной избыточностью и расположением. В этой статье мы создадим хранилище резервных копий TestBkpVault в регионе westus в группе ресурсов testBkpVaultRG. Используйте команду New-AzDataProtectionBackupVault для создания хранилища резервных копий. Дополнительные сведения о создании хранилища Azure Backup.
$storageSetting = New-AzDataProtectionBackupVaultStorageSettingObject -Type LocallyRedundant/GeoRedundant -DataStoreType VaultStore
New-AzDataProtectionBackupVault -ResourceGroupName testBkpVaultRG -VaultName TestBkpVault -Location westus -StorageSetting $storageSetting
$TestBkpVault = Get-AzDataProtectionBackupVault -VaultName TestBkpVault
$TestBKPVault | fl
ETag :
Id : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourceGroups/testBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/TestBkpVault
Identity : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.DppIdentityDetails
IdentityPrincipalId :
IdentityTenantId :
IdentityType :
Location : westus
Name : TestBkpVault
ProvisioningState : Succeeded
StorageSetting : {Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.StorageSetting}
SystemData : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.SystemData
Tag : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.DppTrackedResourceTags
Type : Microsoft.DataProtection/backupVaults
После создания хранилища создадим политику резервного копирования для защиты дисков Azure.
Создание политики резервного копирования
Чтобы получить сведения о внутренних компонентах политики резервного копирования дисков Azure, извлеките шаблон политики с помощью команды Get-AzDataProtectionPolicyTemplate. Эта команда возвращает шаблон политики по умолчанию для заданного типа источника данных. Используйте этот шаблон политики для создания новой политики.
$policyDefn = Get-AzDataProtectionPolicyTemplate -DatasourceType AzureDisk
$policyDefn | fl
DatasourceType : {Microsoft.Compute/disks}
ObjectType : BackupPolicy
PolicyRule : {BackupHourly, Default}
$policyDefn.PolicyRule | fl
BackupParameter : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.AzureBackupParams
BackupParameterObjectType : AzureBackupParams
DataStoreObjectType : DataStoreInfoBase
DataStoreType : OperationalStore
Name : BackupHourly
ObjectType : AzureBackupRule
Trigger : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.ScheduleBasedTriggerContext
TriggerObjectType : ScheduleBasedTriggerContext
IsDefault : True
Lifecycle : {Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.SourceLifeCycle}
Name : Default
ObjectType : AzureRetentionRule
Шаблон политики состоит из триггера (который определяет, что активирует резервное копирование) и жизненного цикла (который принимает решение об удалении, копировании и перемещении резервной копии). При резервном копировании диска Azure значение триггера по умолчанию — запланированная ежечасная активация каждые 4 часа (PT4H) и хранение каждой резервной копии в течение 7 дней.
$policyDefn.PolicyRule[0].Trigger | fl
ObjectType : ScheduleBasedTriggerContext
ScheduleRepeatingTimeInterval : {R/2020-04-05T13:00:00+00:00/PT4H}
TaggingCriterion : {Default}
$policyDefn.PolicyRule[1].Lifecycle | fl
DeleteAfterDuration : P7D
DeleteAfterObjectType : AbsoluteDeleteOption
SourceDataStoreObjectType : DataStoreInfoBase
SourceDataStoreType : OperationalStore
TargetDataStoreCopySetting :
Служба резервного копирования дисков Azure предлагает создавать резервные копии несколько раз в день. Если необходимо выполнять резервное копирование чаще, выберите частоту резервного копирования Ежечасно, после чего можно будет выбрать промежутки между резервным копированием в 4, 6, 8 или 12 часов. Резервное копирование добавляется в расписание в соответствии с выбранным в поле Время интервалом. Например, если выбрать Каждые 4 часа, то резервные копии будут создаваться с промежутками приблизительно в 4 часа, так что моменты резервного копирования будут равномерно распределены по длительности суток. Если резервного копирования один раз в день будет достаточно, выберите частоту резервного копирования Ежедневно. В случае ежедневного резервного копирования можно указать время суток, в которое будут создаваться резервные копии. Важно отметить, что указываемое время суток обозначает время запуска резервного копирования, а не время, когда создание резервной копии будет завершено. Время, требуемое для завершения операции резервного копирования, зависит от различных факторов, включая размер диска и частоту обновлений между последовательными резервными копиями. Однако резервное копирование дисков Azure — это безагентное резервное копирование, использующее добавочные моментальные снимки, что не влияет на производительность приложения в рабочей среде.
Примечание.
- Хотя у выбранного хранилища может быть параметр глобальной избыточности, в настоящее время Резервное копирование дисков Azure поддерживает только хранилище данных моментальных снимков. Все резервные копии хранятся в группе ресурсов в вашей подписке и не копируются в хранилище службы архивации.
- Для дисков Azure, относящихся к номерам SKU SSD уровня "Стандартный", "Стандартный" и SSD уровня "Премиум", можно определить расписание резервного копирования с почасовой частотой (из 1, 2, 4, 6, 8 или 12 часов) и ежедневной частотой.
- Для дисков Azure, принадлежащих номерам SKU уровня "Премиум" версии 2 и "Ультра", можно определить расписание резервного копирования с почасовой частотой только 12 часов и ежедневной частотой.
Дополнительные сведения о создании политик см. в документе Политика резервного копирования дисков Azure.
Если необходимо изменить почасовую частоту или период хранения, используйте команды Edit-AzDataProtectionPolicyTriggerClientObject и (или) Edit-AzDataProtectionPolicyRetentionRuleClientObject. Когда объект политики получит все необходимые значения, перейдите к созданию новой политики из объекта политики с помощью команды New-AzDataProtectionBackupPolicy.
New-AzDataProtectionBackupPolicy -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Name diskBkpPolicy -Policy $policyDefn
Name Type
---- ----
diskBkpPolicy Microsoft.DataProtection/backupVaults/backupPolicies
$diskBkpPol = Get-AzDataProtectionBackupPolicy -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Name "diskBkpPolicy"
Настроить резервное копирование
После создания хранилища и политики пользователю следует принять во внимание 3 важных пункта, касающиеся защиты диска Azure.
Используемые ключевые сущности
Защищаемый диск
Получите идентификатор ARM для защищаемого диска. Он будет служить идентификатором диска. Мы будем использовать пример диска с именем PSTestDisk в группе ресурсов diskrg в другой подписке.
$DiskId = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/diskrg/providers/Microsoft.Compute/disks/PSTestDisk"
Группа ресурсов моментальных снимков
Моментальные снимки диска сохраняются в группе ресурсов в вашей подписке. Как правило, рекомендуется создавать выделенную группу ресурсов в качестве хранилища данных моментальных снимков для использования службой Azure Backup. Наличие выделенной группы ресурсов позволяет ограничивать права доступа к этой группе ресурсов, тем самым обеспечивая безопасность и простоту управления данными резервных копий. Сохраните идентификатор ARM для группы ресурсов, в которой необходимо размещать моментальные снимки диска.
$snapshotrg = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourceGroups/snapshotrg"
Хранилище резервных копий
Для активации моментальных снимков и управления их жизненным циклом хранилищам службы архивации требуются разрешения для диска и группы ресурсов моментальных снимков. Для назначения таких разрешений используется назначенное системой управляемое удостоверение хранилища. Используйте команду Update-AzRecoveryServicesVault для включения управляемого удостоверения, назначенного системой, для хранилища Служб восстановления.
Назначение разрешений
Пользователю необходимо назначить несколько разрешений через RBAC хранилищу (представленному MSI хранилища), а также соответствующему диску и (или) диску RG. Эту операцию можно выполнить на портале или с помощью PowerShell.
Для доступа к другим ресурсам Azure хранилище Azure Backup использует управляемое удостоверение. Чтобы настроить резервное копирование управляемых дисков, управляемому удостоверению хранилища Azure Backup необходим набор разрешений на исходные диски и группы ресурсов, в которых создаются и администрируются моментальные снимки.
Система назначает по одному управляемому удостоверению на ресурс, привязывая их к жизненному циклу этого ресурса. Управляемому удостоверению можно предоставить разрешения, используя управление доступом на основе ролей Azure (Azure RBAC). Управляемое удостоверение — это особый субъект-служба, который можно использовать только с ресурсами Azure. Дополнительные сведения об управляемых удостоверениях.
Для настройки резервного копирования управляемых дисков обеспечьте соблюдение следующих предварительных требований.
Назначьте управляемому удостоверению хранилища Azure Backup роль Читатель резервных копий диска на исходном диске, резервную копию которого вы будете создавать.
Перейдите на диск, резервную копию которого необходимо создавать.
Перейдите в раздел Управление доступом (IAM) и выберите Добавить назначение ролей.
На панели контекста справа выберите Читатель резервных копий диска в раскрывающемся списке Роль.
Выберите управляемое удостоверение хранилища Azure Backup и щелкните Сохранить.
Совет
Введите имя хранилища резервных копий, чтобы выбрать управляемое удостоверение этого хранилища.
Назначьте управляемому удостоверению хранилища Azure Backup роль Участник моментальных снимков дисков в группе ресурсов, в которой служа Azure Backup создает и администрирует резервные копии. Моментальные снимки диска сохраняются в группе ресурсов в вашей подписке. Чтобы служба Azure Backup могла создавать, сохранять и контролировать моментальные снимки, необходимо предоставить разрешения хранилищу резервных копий.
Перейдите в группу ресурсов. Например, здесь группа ресурсов — SnapshotRG, которая расположена в той же подписке, что и диск, резервные копии которого будут создаваться.
Перейдите в раздел Управление доступом (IAM) и выберите Добавить назначение ролей.
На правой панели контекста выберите в раскрывающемся списке Роль вариант Участник моментальных снимков дисков.
Выберите управляемое удостоверение хранилища Azure Backup и щелкните Сохранить.
Совет
Введите имя хранилища резервных копий, чтобы выбрать управляемое удостоверение этого хранилища.
Убедитесь, что управляемое удостоверение хранилища резервных копий имеет правильный набор назначений ролей относительно исходного диска и группы ресурсов, которая служит хранилищем данных моментальных снимков.
Примечание.
На портале назначения ролей сразу будут отображаться правильно, но на применение разрешений к управляемому удостоверению хранилища Azure Backup потребуется приблизительно 15–30 минут.
Подготовка запроса
После установки всех соответствующих разрешений выполняется конфигурация резервного копирования, состоящая из 2 этапов. Сначала мы готовим соответствующий запрос с помощью соответствующей группы ресурсов хранилища, политики, диска и моментального снимка путем выполнения команды Initialize-AzDataProtectionBackupInstance. Затем мы отправляем запрос на защиту диска с помощью команды New-AzDataProtectionBackupInstance.
$instance = Initialize-AzDataProtectionBackupInstance -DatasourceType AzureDisk -DatasourceLocation $TestBkpvault.Location -PolicyId $diskBkpPol[0].Id -DatasourceId $DiskId
$instance.Property.PolicyInfo.PolicyParameter.DataStoreParametersList[0].ResourceGroupId = $snapshotrg
New-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -BackupInstance $instance
Name Type BackupInstanceName
---- ---- ------------------
diskrg-PSTestDisk-3df6ac08-9496-4839-8fb5-8b78e594f166 Microsoft.DataProtection/backupVaults/backupInstances diskrg-PSTestDisk-3df6ac08-9496-4839-8fb5-8b78e594f166
Выполнение резервного копирования по требованию
Получите соответствующий экземпляр резервной копии, на котором пользователь хочет активировать резервное копирование, с помощью команды Get-AzDataProtectionBackupInstance.
$instance = Get-AzDataProtectionBackupInstance -SubscriptionId "xxxx-xxx-xxx" -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Name "BackupInstanceName"
При активации резервного копирования можно указать правило хранения. Чтобы просмотреть правила хранения в политике, перейдите к правилам хранения в составе объекта политики. В приведенном ниже примере отображается правило с именем default, и мы будем использовать это правило для резервного копирования по запросу.
$policyDefn.PolicyRule | fl
BackupParameter : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.AzureBackupParams
BackupParameterObjectType : AzureBackupParams
DataStoreObjectType : DataStoreInfoBase
DataStoreType : OperationalStore
Name : BackupHourly
ObjectType : AzureBackupRule
Trigger : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.ScheduleBasedTriggerContext
TriggerObjectType : ScheduleBasedTriggerContext
IsDefault : True
Lifecycle : {Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.SourceLifeCycle}
Name : Default
ObjectType : AzureRetentionRule
Активируйте резервное копирование по запросу с помощью команды Backup-AzDataProtectionBackupInstanceAdhoc.
$AllInstances = Get-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name
Backup-AzDataProtectionBackupInstanceAdhoc -BackupInstanceName $AllInstances[0].Name -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -BackupRuleOptionRuleName "Default"
Отслеживание заданий
Для отслеживания заданий используется команда Get-AzDataProtectionJob. Можно вывести список всех заданий и получить сведения о конкретном задании.
Для отслеживания всех заданий во всех хранилищах резервных копий можно также использовать команду Az.ResourceGraph. Используйте команду Search-AzDataProtectionJobInAzGraph для получения соответствующего задания, которое может находиться в любом из хранилищ службы архивации.
$job = Search-AzDataProtectionJobInAzGraph -Subscription $sub -ResourceGroupName "testBkpVaultRG" -Vault $TestBkpVault.Name -DatasourceType AzureDisk -Operation OnDemandBackup