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. Możesz też użyć polecenia cmdlet Get-AzRecoveryServicesBackupSchedulePolicyObject, aby uzyskać domyślne zasady harmonogramu. Obiekty SchedulePolicy i RetentionPolicy są używane jako dane wejściowe polecenia cmdlet New-AzRecoveryServicesBackupProtectionPoli cy. 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 Base 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 obiekt base RetentionPolicy, a następnie zapisuje 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ę 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ę, 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 WarstwaRecommended. 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 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 RetentionPolicyObject i aktualizujemy różnicowe i pełne ustawienia przechowywania 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
Typ: | Nullable<T>[BackupManagementType] |
Dopuszczalne wartości: | AzureVM, AzureStorage, AzureWorkload |
Position: | 3 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-BackupSnapshotResourceGroup
Niestandardowa nazwa grupy zasobów do przechowywania natychmiastowych punktów odzyskiwania zarządzanych maszyn wirtualnych. Jest to opcjonalne
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-BackupSnapshotResourceGroupSuffix
Niestandardowy sufiks nazwy grupy zasobów do przechowywania natychmiastowych punktów odzyskiwania zarządzanych maszyn wirtualnych. Jest to opcjonalne
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-DefaultProfile
Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.
Typ: | IAzureContextContainer |
Aliasy: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-MoveToArchiveTier
Określa, czy punkty odzyskiwania powinny być przenoszone do magazynu archiwum przez zasady, czy nie. Dozwolone wartości są $true, $false
Typ: | Nullable<T>[Boolean] |
Position: | 6 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Name
Określa nazwę zasad.
Typ: | String |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-RetentionPolicy
Określa obiekt base RetentionPolicy.
Aby uzyskać obiekt
Typ: | RetentionPolicyBase |
Position: | 4 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-SchedulePolicy
Określa obiekt base SchedulePolicy. Możesz użyć polecenia cmdlet Get-AzRecoveryServicesBackupSchedulePolicyObject, aby uzyskać obiekt SchedulePolicy.
Typ: | SchedulePolicyBase |
Position: | 5 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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
Typ: | SnapshotConsistencyType |
Dopuszczalne wartości: | Default, OnlyCrashConsistent |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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
Typ: | Nullable<T>[Int32] |
Position: | 8 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-TierAfterDurationType
Określa, czy właściwość TierAfterDuration jest wyrażona w dniach lub miesiącach
Typ: | String |
Dopuszczalne wartości: | Days, Months |
Position: | 9 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-TieringMode
Określa, czy przenieść zalecane, czy wszystkie kwalifikujące się punkty odzyskiwania do archiwum
Typ: | TieringMode |
Dopuszczalne wartości: | TierRecommended, TierAllEligible |
Position: | 7 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-VaultId
Identyfikator ARM magazynu usługi Recovery Services.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-WhatIf
Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-WorkloadType
Typ obciążenia zasobu. Dopuszczalne wartości tego parametru to:
- AzureVM
- AzureFiles
- MSSQL
Typ: | WorkloadType |
Dopuszczalne wartości: | AzureVM, AzureFiles, MSSQL |
Position: | 2 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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]]