New-AzRecoveryServicesBackupProtectionPolicy
Tworzy zasady ochrony kopii zapasowych.
Składnia
New-AzRecoveryServicesBackupProtectionPolicy
[-Name] <String>
[-WorkloadType] <WorkloadType>
[[-BackupManagementType] <BackupManagementType>]
[[-RetentionPolicy] <RetentionPolicyBase>]
[[-SchedulePolicy] <SchedulePolicyBase>]
[[-MoveToArchiveTier] <Boolean>]
[[-TieringMode] <TieringMode>]
[[-TierAfterDuration] <Int32>]
[[-TierAfterDurationType] <String>]
[-BackupSnapshotResourceGroup <String>]
[-BackupSnapshotResourceGroupSuffix <String>]
[-SnapshotConsistencyType <SnapshotConsistencyType>]
[-VaultId <String>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Opis
Polecenie cmdlet New-AzRecoveryServicesBackupProtectionPolicy tworzy zasady ochrony kopii zapasowych w magazynie. Zasady ochrony są skojarzone z co najmniej jedną zasadą przechowywania. Zasady przechowywania określają, jak długo punkt odzyskiwania jest przechowywany w usłudze Azure Backup. Aby uzyskać domyślne zasady przechowywania, możesz użyć polecenia cmdlet Get-AzRecoveryServicesBackupRetentionPolicyObject. Aby uzyskać domyślne zasady harmonogramu, możesz użyć polecenia cmdlet Get-AzRecoveryServicesBackupSchedulePolicyObject. Obiekty SchedulePolicy i RetentionPolicy są używane jako dane wejściowe polecenia cmdlet New-AzRecoveryServicesBackupProtectionPolicy . Ustaw kontekst magazynu przy użyciu polecenia cmdlet Set-AzRecoveryServicesVaultContext przed użyciem bieżącego polecenia cmdlet.
Przykłady
Przykład 1. Tworzenie zasad ochrony kopii zapasowych
$SchPol = Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType "AzureVM"
$SchPol.ScheduleRunTimes.Clear()
$Dt = Get-Date
$SchPol.ScheduleRunTimes.Add($Dt.ToUniversalTime())
$RetPol = Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType "AzureVM"
$RetPol.DailySchedule.DurationCountInDays = 365
New-AzRecoveryServicesBackupProtectionPolicy -Name "NewPolicy" -WorkloadType AzureVM -RetentionPolicy $RetPol -SchedulePolicy $SchPol
Pierwsze polecenie pobiera podstawowy obiekt SchedulePolicyObject, a następnie zapisuje je w zmiennej $SchPol. Drugie polecenie usuwa wszystkie zaplanowane czasy uruchamiania z zasad harmonogramu w $SchPol. Trzecie polecenie używa polecenia cmdlet Get-Date, aby uzyskać bieżącą datę i godzinę. Czwarte polecenie dodaje bieżącą datę i godzinę w $Dt jako zaplanowany czas wykonywania do zasad harmonogramu. Piąte polecenie pobiera podstawowy obiekt RetentionPolicy , a następnie przechowuje go w zmiennej $RetPol. Szóste polecenie ustawia zasady czasu przechowywania na 365 dni. Ostatnie polecenie tworzy obiekt BackupProtectionPolicy na podstawie zasad harmonogramu i przechowywania utworzonych przez poprzednie polecenia.
Przykład 2. Tworzenie zasad udostępniania plików dla wielu kopii zapasowych dziennie
$schedulePolicy = Get-AzRecoveryServicesBackupSchedulePolicyObject -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 = Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType AzureFiles -BackupManagementType AzureStorage -ScheduleRunFrequency Hourly
$retentionPolicy.DailySchedule.DurationCountInDays = 10
New-AzRecoveryServicesBackupProtectionPolicy -Name "NewPolicy" -WorkloadType AzureVM -RetentionPolicy $retentionPolicy -SchedulePolicy $schedulePolicy
Pierwsze polecenie pobiera co godzinę obiekt SchedulePolicyObject, a następnie zapisuje je w zmiennej $schedulePolicy. Drugie i trzecie polecenie pobiera strefę czasową i aktualizuje strefę czasową w $schedulePolicy. Czwarte i piąte polecenie inicjuje godzinę rozpoczęcia okna harmonogramu i aktualizuje $schedulePolicy. Pamiętaj, że czas rozpoczęcia musi znajdować się w formacie UTC, nawet jeśli strefa czasowa nie jest utc. Szóste i siódme polecenie aktualizuje interwał (w godzinach), po którym kopia zapasowa zostanie ponowiona w tym samym dniu, czas trwania (w godzinach), dla którego zostanie uruchomiony harmonogram. Ósme polecenie pobiera obiekt RetentionPolicy co godzinę bazy, a następnie zapisuje go w zmiennej $retentionPolicy. Dziewiąte polecenie ustawia zasady czasu przechowywania na 10 dni. Ostatnie polecenie tworzy obiekt BackupProtectionPolicy na podstawie zasad harmonogramu i przechowywania utworzonych przez poprzednie polecenia.
Przykład 3
Tworzy zasady ochrony kopii zapasowych. (automatycznie wygenerowane)
New-AzRecoveryServicesBackupProtectionPolicy -Name 'NewPolicy' -RetentionPolicy $RetPol -SchedulePolicy $SchPol -VaultId $vault.ID -WorkloadType AzureVM
Przykład 4. Tworzenie nowych zasad maszyny wirtualnej AzureVM w celu włączenia warstwy inteligentnej Archiwum przy użyciu warstwy TieringModeRecommended
$pol = New-AzRecoveryServicesBackupProtectionPolicy -Name newTierRecommendedPolicy -WorkloadType AzureVM -BackupManagementType AzureVM -RetentionPolicy $retPol -SchedulePolicy $schPol -VaultId $vault.ID -MoveToArchiveTier $true -TieringMode TierRecommended
To polecenie służy do tworzenia zasad w celu włączenia warstwy inteligentnej archiwum dla trybu obsługi warstw w warstwieRecommended, ustawiamy parametr -MoveToArchiveTier na $true w celu włączenia obsługi warstw inteligentnych. Ustawiliśmy wartość TieringMode na TierRecommended, aby przenieść wszystkie zalecane punkty odzyskiwania do archiwum. Należy pamiętać, że tryb warstwy TierRecommended jest obsługiwany tylko dla typu obciążenia AzureVM.
Przykład 5. Tworzenie nowych zasad z wyłączoną funkcją archiwizacji warstw inteligentnych
$pol = New-AzRecoveryServicesBackupProtectionPolicy -VaultId $vault.ID -WorkloadType AzureVM -BackupManagementType AzureVM -RetentionPolicy $retPol -SchedulePolicy $schPol -MoveToArchiveTier $false
To polecenie służy do wyłączania warstw inteligentnych archiwum podczas tworzenia zasad, ustawiamy parametr MoveToArchiveTier na $false, aby wyłączyć obsługę warstw.
Przykład 6. Tworzenie standardowych zasad strefy czasowej innej niż UTC dla elementu workloadType MSSQL
$schedulePolicy = Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType MSSQL -BackupManagementType AzureWorkload -PolicySubType Standard
$timeZone = Get-TimeZone -ListAvailable | Where-Object { $_.Id -match "Tokyo" }
$date= Get-Date -Hour 9 -Minute 0 -Second 0 -Year 2022 -Day 26 -Month 12 -Millisecond 0
$date = [DateTime]::SpecifyKind($date,[DateTimeKind]::Utc)
$schedulePolicy.FullBackupSchedulePolicy.ScheduleRunFrequency = "Weekly"
$schedulePolicy.FullBackupSchedulePolicy.ScheduleRunTimes[0] = $date
$schedulePolicy.FullBackupSchedulePolicy.ScheduleRunTimeZone = $timeZone[0].Id
$schedulePolicy.IsDifferentialBackupEnabled = $true
$schedulePolicy.DifferentialBackupSchedulePolicy.ScheduleRunDays[0] = "Wednesday"
$schedulePolicy.DifferentialBackupSchedulePolicy.ScheduleRunTimes[0] = $date.AddHours(1)
$retentionPolicy = Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType MSSQL -BackupManagementType AzureWorkload
$retentionPolicy.DifferentialBackupRetentionPolicy.RetentionCount = 15
$retentionPolicy.FullBackupRetentionPolicy.IsDailyScheduleEnabled = $false
$retentionPolicy.FullBackupRetentionPolicy.IsMonthlyScheduleEnabled = $false
$retentionPolicy.FullBackupRetentionPolicy.WeeklySchedule.DurationCountInWeeks = 35
$retentionPolicy.FullBackupRetentionPolicy.YearlySchedule.DurationCountInYears = 2
New-AzRecoveryServicesBackupProtectionPolicy -Name "Tokyo-mssql-policy" -WorkloadType MSSQL -BackupManagementType AzureWorkload -RetentionPolicy $retentionPolicy -SchedulePolicy $schedulePolicy -VaultId $vault.ID
Pierwsze polecenie pobiera obiekt SchedulePolicyObject, a następnie zapisuje je w zmiennej $schedulePolicy. Drugi blok polecenia pobiera strefę czasową i datę/godzinę (czas lokalny oznaczony jako UTC) i aktualizuje strefę czasową i godzinę w $schedulePolicy. Należy pamiętać, że data/godzina powinna być zawsze oznaczona jako UTC, ponieważ strefa czasowa jest podawana oddzielnie. Należy również pamiętać, że dla innych typów obciążeń strefa czasowa powinna być podana w atrybucie $schedulePolicy.ScheduleRunTimeZone. Trzeci blok poleceń aktualizuje zasady harmonogramu różnicowego. Następnie uzyskujemy ustawienia RetentionPolicyObject i aktualizują różnicowe i pełne przechowywanie kopii zapasowych. Na koniec utworzymy obiekt BackupProtectionPolicy na podstawie zasad harmonogramu i przechowywania utworzonych przez poprzednie polecenia.
Parametry
-BackupManagementType
Klasa chronionych zasobów. Dopuszczalne wartości tego parametru to:
- AzureVM
- AzureStorage
- AzureWorkload
Type: | Nullable<T>[BackupManagementType] |
Accepted values: | AzureVM, AzureStorage, AzureWorkload |
Position: | 3 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-BackupSnapshotResourceGroup
Niestandardowa nazwa grupy zasobów do przechowywania natychmiastowych punktów odzyskiwania zarządzanych maszyn wirtualnych. Jest to opcjonalne
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-BackupSnapshotResourceGroupSuffix
Niestandardowy sufiks nazwy grupy zasobów do przechowywania natychmiastowych punktów odzyskiwania zarządzanych maszyn wirtualnych. Jest to opcjonalne
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DefaultProfile
Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.
Type: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MoveToArchiveTier
Określa, czy punkty odzyskiwania powinny być przenoszone do magazynu archiwum przez zasady, czy nie. Dozwolone wartości są $true, $false
Type: | Nullable<T>[Boolean] |
Position: | 6 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Określa nazwę zasad.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RetentionPolicy
Określa podstawowy obiekt RetentionPolicy . Aby uzyskać obiekt RetentionPolicy , można użyć polecenia cmdlet Get-AzRecoveryServicesBackupRetentionPolicyObject.
Type: | RetentionPolicyBase |
Position: | 4 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SchedulePolicy
Określa podstawowy obiekt SchedulePolicy . Aby uzyskać obiekt SchedulePolicy , możesz użyć polecenia cmdlet Get-AzRecoveryServicesBackupSchedulePolicyObject.
Type: | SchedulePolicyBase |
Position: | 5 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SnapshotConsistencyType
Typ spójności migawki do użycia na potrzeby tworzenia kopii zapasowej. Jeśli ustawiono wartość OnlyCrashConsistent, wszystkie skojarzone elementy będą miały spójną migawkę spójną na poziomie awarii. Możliwe wartości to OnlyCrashConsistent, Default
Type: | SnapshotConsistencyType |
Accepted values: | Default, OnlyCrashConsistent |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TierAfterDuration
Określa czas trwania, po którym punkty odzyskiwania powinny zacząć przechodzić do warstwy archiwum, wartość może być w dniach lub miesiącach. Dotyczy tylko wtedy, gdy tryb TieringMode to TierAllEligible
Type: | Nullable<T>[Int32] |
Position: | 8 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TierAfterDurationType
Określa, czy właściwość TierAfterDuration jest wyrażona w dniach lub miesiącach
Type: | String |
Accepted values: | Days, Months |
Position: | 9 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TieringMode
Określa, czy przenieść zalecane, czy wszystkie kwalifikujące się punkty odzyskiwania do archiwum
Type: | TieringMode |
Accepted values: | TierRecommended, TierAllEligible |
Position: | 7 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VaultId
Identyfikator ARM magazynu usługi Recovery Services.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Pokazuje, co się stanie po uruchomieniu polecenia cmdlet.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WorkloadType
Typ obciążenia zasobu. Dopuszczalne wartości tego parametru to:
- AzureVM
- AzureFiles
- MSSQL
Type: | WorkloadType |
Accepted values: | AzureVM, AzureFiles, MSSQL |
Position: | 2 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Dane wejściowe
Nullable<T>[[Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.Models.BackupManagementType, Microsoft.Azure.PowerShell.Cmdlets.RecoveryServices.Backup.Models, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]