Set-AzRecoveryServicesBackupProtectionPolicy

修改備份保護原則。

Syntax

Set-AzRecoveryServicesBackupProtectionPolicy
   [-Policy] <PolicyBase>
   [[-RetentionPolicy] <RetentionPolicyBase>]
   [[-SchedulePolicy] <SchedulePolicyBase>]
   [-MoveToArchiveTier <Boolean>]
   [-TieringMode <TieringMode>]
   [-TierAfterDuration <Int32>]
   [-TierAfterDurationType <String>]
   [-BackupSnapshotResourceGroup <String>]
   [-BackupSnapshotResourceGroupSuffix <String>]
   [-VaultId <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-Token <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzRecoveryServicesBackupProtectionPolicy
   [-Policy] <PolicyBase>
   [-FixForInconsistentItems]
   [-BackupSnapshotResourceGroup <String>]
   [-BackupSnapshotResourceGroupSuffix <String>]
   [-VaultId <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

Set-AzRecoveryServicesBackupProtectionPolicy Cmdlet 會修改現有的 Azure 備份 保護原則。 您可以修改備份排程和保留原則元件。 您所做的任何變更都會影響與原則相關聯之項目的備份和保留。 在使用目前的 Cmdlet 之前,請先使用 Set-AzRecoveryServicesVaultContext Cmdlet 來設定保存庫內容。

範例

範例 1:修改備份保護原則

$SchPol = Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType "AzureVM" 
$SchPol.ScheduleRunTimes.Clear()
$Time = Get-Date
$Time1 = Get-Date -Year $Time.Year -Month $Time.Month -Day $Time.Day -Hour $Time.Hour -Minute 0 -Second 0 -Millisecond 0
$Time1 = $Time1.ToUniversalTime()
$SchPol.ScheduleRunTimes.Add($Time1)
$SchPol.ScheduleRunFrequency.Clear
$SchPol.ScheduleRunDays.Add("Monday")
$SchPol.ScheduleRunFrequency="Weekly"
$RetPol = Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType "AzureVM" 
$RetPol.IsDailyScheduleEnabled=$false
$RetPol.DailySchedule.DurationCountInDays = 0
$RetPol.IsWeeklyScheduleEnabled=$true 
$RetPol.WeeklySchedule.DaysOfTheWeek.Add("Monday")
$RetPol.WeeklySchedule.DurationCountInWeeks = 365
$vault = Get-AzRecoveryServicesVault -ResourceGroupName "azurefiles" -Name "azurefilesvault"
$Pol= Get-AzRecoveryServicesBackupProtectionPolicy -Name "TestPolicy" -VaultId $vault.ID
$Pol.SnapshotRetentionInDays=5
Set-AzRecoveryServicesBackupProtectionPolicy -Policy $Pol -SchedulePolicy $SchPol -RetentionPolicy $RetPol -BackupSnapshotResourceGroup "snapshotResourceGroupPrefix" -BackupSnapshotResourceGroupSuffix "snapshotResourceGroupSuffix"

以下是修改保護原則所要遵循之步驟的高階描述:

  1. 取得基底 SchedulePolicyObject 和基底 RetentionPolicyObject。 將它們儲存在一些變數中。
  2. 根據您的需求,設定排程和保留原則物件的不同參數。 例如- 在上述範例腳本中,我們嘗試設定每周保護原則。 因此,我們已將排程頻率變更為「每周」,並更新排程運行時間。 在保留原則物件中,我們更新了每周保留期間,並設定正確的「已啟用每周排程」旗標。 如果您想要設定每日原則,請將 [已啟用每日排程] 旗標設定為 true,併為其他物件參數指派適當的值。
  3. 取得您想要修改的備份保護原則,並將其儲存在變數中。 在上述範例中,我們擷取了備份原則,其中包含我們想要修改的名稱 “TestPolicy”。
  4. 使用修改過的排程原則物件和保留原則物件,修改步驟 3 中擷取的備份保護原則。 我們使用 BackupSnapshotResourceGroup、BackupSnapshotResourceGroupSuffix 參數來更新立即 IP 的快照集資源組名。

範例 2:修改每天多個備份的 Azure 檔案共享原則

$schedulePolicy = Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType AzureFiles -BackupManagementType AzureStorage -ScheduleRunFrequency Hourly
$retentionPolicy = Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType AzureFiles -BackupManagementType AzureStorage -ScheduleRunFrequency Hourly
$timeZone = Get-TimeZone
$schedulePolicy.ScheduleRunTimeZone = $timeZone.Id
$startTime = Get-Date -Date "2021-12-22T06:00:00.00+00:00"
$schedulePolicy.ScheduleWindowStartTime = $startTime.ToUniversalTime()
$schedulePolicy.ScheduleInterval = 6
$schedulePolicy.ScheduleWindowDuration = 14
$retentionPolicy.DailySchedule.DurationCountInDays = 6
$policy = Get-AzRecoveryServicesBackupProtectionPolicy -Name "TestPolicy" -VaultId $vault.ID
Set-AzRecoveryServicesBackupProtectionPolicy -Policy $policy -VaultId $vault.ID -SchedulePolicy $schedulePolicy -RetentionPolicy $retentionPolicy

以下是每天針對多個備份修改檔案共享原則所要遵循之步驟的高階描述:

  1. 取得基底每小時 SchedulePolicyObject 和基底每小時 RetentionPolicyObject。 將它們儲存在一些變數中。
  2. 根據您的需求,設定排程和保留原則物件的不同參數。 例如- 在上述範例腳本中,我們嘗試設定要執行排程的$timeZone,我們會設定每小時排程的開始時間,設定每小時間隔(以小時為單位),之後備份會在執行排程的同一天、持續時間(以小時為單位)重試。 接下來,我們會修改每日恢復點的保留設定。
  3. 取得您想要修改的備份保護原則,並將其儲存在變數中。 在上述範例中,我們擷取了備份原則,其中包含我們想要修改的名稱 “TestPolicy”。
  4. 使用修改過的排程原則物件和保留原則物件,修改步驟 3 中擷取的備份保護原則。

範例 3:修改 AzureWorkload 原則以啟用封存智慧階層處理

$pol = Set-AzRecoveryServicesBackupProtectionPolicy -VaultId $vault.ID -Policy $policy -MoveToArchiveTier $true -TieringMode TierAllEligible -TierAfterDuration 60 -TierAfterDurationType Days

此命令可用來修改原則來啟用原則$policy的封存智慧階層處理,我們將 -MoveToArchiveTier 參數設定為$true啟用階層處理。 我們選擇 TieringMode 為 TierAllEligible,在 TierAfterDuration 和 TierAfterDurationType 參數提供的特定持續時間之後,將所有合格的恢復點移至封存。 若要將建議的恢復點移至 AzureVM 的封存,請使用 TieringMode TierRecommended。

範例 4:停用現有原則上的智慧階層處理

$pol = Set-AzRecoveryServicesBackupProtectionPolicy -VaultId $vault.ID -Policy $policy -MoveToArchiveTier $false

此命令用來停用原則$policy的封存智慧階層處理,我們將 -MoveToArchiveTier 參數設定為 $false。 請注意,停用封存智慧階層處理可能會造成成本影響。

參數

-BackupSnapshotResourceGroup

自定義資源組名,以儲存受控虛擬機的立即恢復點。 這是選擇性的

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BackupSnapshotResourceGroupSuffix

自訂資源組名後綴,以儲存受控虛擬機的立即恢復點。 這是選擇性的

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

執行 Cmdlet 之前先提示您確認。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

用於與 azure 通訊的認證、帳戶、租用戶和訂用帳戶。

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FixForInconsistentItems

Switch 參數,指出是否要重試失敗項目的原則更新。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-MoveToArchiveTier

指定是否應該將恢復點移至原則的封存記憶體。 允許的值是$true,$false

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Policy

指定此 Cmdlet 修改的備份保護原則。 若要取得 BackupProtectionPolicy 物件,請使用 Get-AzRecoveryServicesBackupProtectionPolicy Cmdlet。

Type:PolicyBase
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-RetentionPolicy

指定基底保留原則。 若要取得 RetentionPolicy 物件,請使用 Get-AzRecoveryServicesBackupRetentionPolicyObject Cmdlet。

Type:RetentionPolicyBase
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SchedulePolicy

指定基底排程原則物件。 若要取得 SchedulePolicy 物件,請使用 Get-AzRecoveryServicesBackupSchedulePolicyObject 物件。

Type:SchedulePolicyBase
Position:3
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TierAfterDuration

指定恢復點應該開始移至封存層的持續時間,值可以是天數或月份。 僅適用於 TieringMode 為 TierAllEligible 時

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TierAfterDurationType

指定 TierAfterDuration 是否為 Days 或 Months

Type:String
Accepted values:Days, Months
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TieringMode

指定要將建議的恢復點或所有合格恢復點移至封存

Type:TieringMode
Accepted values:TierRecommended, TierAllEligible
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Token

用來向資源防護訂用帳戶驗證重要作業的輔助存取令牌

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VaultId

復原服務保存庫的 ARM 識別碼。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

顯示執行 Cmdlet 後會發生的情況。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

PolicyBase

String

輸出

JobBase