Distribuera och hantera säkerhetskopiering till Azure för DPM-servrar (Data Protection Manager) med PowerShell
Den här artikeln beskriver hur du använder PowerShell för att konfigurera Azure Backup på en DPM-server och för att hantera säkerhetskopiering och återställning.
Konfigurera PowerShell-miljön
Innan du kan använda PowerShell för att hantera säkerhetskopior från Data Protection Manager till Azure måste du ha rätt miljö i PowerShell. I början av PowerShell-sessionen kontrollerar du att du kör följande kommando för att importera rätt moduler och gör att du kan referera till DPM-cmdletarna korrekt:
& "C:\Program Files\Microsoft System Center 2012 R2\DPM\DPM\bin\DpmCliInitScript.ps1"
Welcome to the DPM Management Shell!
Full list of cmdlets: Get-Command
Only DPM cmdlets: Get-DPMCommand
Get general help: help
Get help for a cmdlet: help <cmdlet-name> or <cmdlet-name> -?
Get definition of a cmdlet: Get-Command <cmdlet-name> -Syntax
Sample DPM scripts: Get-DPMSampleScript
Installation och registrering
Kommentar
Vi rekommenderar att du använder Azure Az PowerShell-modulen för att interagera med Azure. Information om hur du kommer igång finns i Installera Azure PowerShell. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.
Börja med att ladda ned den senaste Azure PowerShell-versionen.
Följande konfigurations- och registreringsuppgifter kan automatiseras med PowerShell:
- Skapa ett Recovery Services-valv
- Installera Azure Backup-agenten
- Registrera med Azure Backup-tjänsten
- Nätverksinställningar
- Krypteringsinställningar
Skapa ett Recovery Services-valv
Följande steg leder dig genom att skapa ett Recovery Services-valv. Ett Recovery Services-valv skiljer sig från ett Backup-valv.
Om du använder Azure Backup för första gången måste du använda cmdleten Register-AzResourceProvider för att registrera Azure Recovery Service-providern med din prenumeration.
Register-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
Recovery Services-valvet är en ARM-resurs, så du måste placera det i en resursgrupp. Du kan använda en befintlig resursgrupp eller skapa en ny. När du skapar en ny resursgrupp anger du namnet och platsen för resursgruppen.
New-AzResourceGroup –Name "test-rg" –Location "West US"
Använd cmdleten New-AzRecoveryServicesVault för att skapa ett nytt valv. Se till att ange samma plats för valvet som användes för resursgruppen.
New-AzRecoveryServicesVault -Name "testvault" -ResourceGroupName " test-rg" -Location "West US"
Ange vilken typ av lagringsredundans som ska användas. Du kan använda lokalt redundant lagring (LRS), geo-redundant lagring (GRS) eller zonredundant lagring (ZRS). I följande exempel visas alternativet BackupStorageRedundancy för testVault inställt på GeoRedundant.
Dricks
Många Azure Backup-cmdletar kräver Recovery Services-valvobjekt som indata. Därför är det praktiskt att lagra Backup Recovery Services-valvobjektet i en variabel.
$vault1 = Get-AzRecoveryServicesVault –Name "testVault" Set-AzRecoveryServicesBackupProperties -vault $vault1 -BackupStorageRedundancy GeoRedundant
Visa valven i en prenumeration
Använd Get-AzRecoveryServicesVault för att visa listan över alla valv i den aktuella prenumerationen. Du kan använda det här kommandot för att kontrollera att ett nytt valv har skapats eller för att se vilka valv som är tillgängliga i prenumerationen.
Kör kommandot Get-AzRecoveryServicesVault och alla valv i prenumerationen visas.
Get-AzRecoveryServicesVault
Name : Contoso-vault
ID : /subscriptions/1234
Type : Microsoft.RecoveryServices/vaults
Location : WestUS
ResourceGroupName : Contoso-docs-rg
SubscriptionId : 1234-567f-8910-abc
Properties : Microsoft.Azure.Commands.RecoveryServices.ARSVaultProperties
Installera Azure Backup-agenten på en DPM-server
Innan du installerar Azure Backup-agenten måste installationsprogrammet laddas ned och finnas på Windows Server. Du kan hämta den senaste versionen av installationsprogrammet från Microsoft Download Center eller från sidan Instrumentpanel för Recovery Services-valvet. Spara installationsprogrammet på en lättillgänglig plats som C:\Downloads\*
.
Installera agenten genom att köra följande kommando i en upphöjd PowerShell-konsol på DPM-servern:
MARSAgentInstaller.exe /q
Detta installerar agenten med alla standardalternativ. Installationen tar några minuter i bakgrunden. Om du inte anger alternativet /nu öppnas Windows Update-fönstret i slutet av installationen för att söka efter uppdateringar.
Agenten visas i listan över installerade program. Om du vill se listan över installerade program går du till Kontrollpanelen> Programprogram>och funktioner.
Installationsalternativ
Om du vill se alla tillgängliga alternativ via kommandoraden använder du följande kommando:
MARSAgentInstaller.exe /?
Bland de tillgängliga alternativen finns:
Option | Details | Standardvärde |
---|---|---|
/q | Tyst installation | - |
/p:"location" | Sökväg till installationsmappen för Azure Backup-agenten. | C:\Program Files\Microsoft Azure Recovery Services Agent |
/s:"location" | Sökväg till cachemappen för Azure Backup-agenten. | C:\Program Files\Microsoft Azure Recovery Services Agent\Scratch |
/m | Anmäl dig till Microsoft Update | - |
/nu | Sök inte efter uppdateringar när installationen är klar | - |
/d | Avinstallerar Microsoft Azure Recovery Services-agenten | - |
/Ph | Proxyvärdadress | - |
/Po | Portnummer för proxyvärd | - |
/Pu | Proxyvärdanvändarnamn | - |
/Pw | Proxylösenord | - |
Registrera DPM till ett Recovery Services-valv
När du har skapat Recovery Services-valvet laddar du ned den senaste agenten och autentiseringsuppgifterna för valvet och lagrar det på en lämplig plats som C:\Downloads.
$credspath = "C:\downloads"
$credsfilename = Get-AzRecoveryServicesVaultSettingsFile -Backup -Vault $vault1 -Path $credspath
$credsfilename
C:\downloads\testvault\_Sun Apr 10 2016.VaultCredentials
På DPM-servern kör du cmdleten Start-OBRegistration för att registrera datorn med valvet.
$cred = $credspath + $credsfilename
Start-OBRegistration-VaultCredentials $cred -Confirm:$false
CertThumbprint :7a2ef2caa2e74b6ed1222a5e89288ddad438df2
SubscriptionID : ef4ab577-c2c0-43e4-af80-af49f485f3d1
ServiceResourceName: testvault
Region :West US
Machine registration succeeded.
Inledande konfigurationsinställningar
När DPM-servern har registrerats med Recovery Services-valvet börjar den med standardprenumerationsinställningar. Dessa prenumerationsinställningar omfattar nätverk, kryptering och mellanlagringsområdet. Om du vill ändra prenumerationsinställningarna måste du först få ett handtag på de befintliga (standard)-inställningarna med cmdleten Get-DPMCloudSubscriptionSetting :
$setting = Get-DPMCloudSubscriptionSetting -DPMServerName "TestingServer"
Alla ändringar görs i det här lokala PowerShell-objektet $setting
och sedan checkas det fullständiga objektet in i DPM och Azure Backup för att spara dem med hjälp av cmdleten Set-DPMCloudSubscriptionSetting . Du måste använda –Commit
flaggan för att säkerställa att ändringarna sparas. Inställningarna tillämpas inte och används inte av Azure Backup om de inte har bekräftats.
Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -Commit
Nätverk
Om anslutningen för DPM-datorn till Azure Backup-tjänsten på Internet sker via en proxyserver bör proxyserverinställningarna anges för lyckade säkerhetskopieringar. Detta görs med hjälp av parametrarna -ProxyServer
och -ProxyUsername
-ProxyPort
och ProxyPassword
med cmdleten Set-DPMCloudSubscriptionSetting. I det här exemplet finns det ingen proxyserver, så vi rensar uttryckligen all proxyrelaterad information.
Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -NoProxy
Bandbreddsanvändning kan också styras med alternativ för -WorkHourBandwidth
och -NonWorkHourBandwidth
för en viss uppsättning dagar i veckan. I det här exemplet ställer vi inte in några begränsningar.
Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -NoThrottle
Konfigurera mellanlagringsområdet
Azure Backup-agenten som körs på DPM-servern behöver tillfällig lagring för data som återställs från molnet (lokalt mellanlagringsområde). Konfigurera mellanlagringsområdet med hjälp av cmdleten Set-DPMCloudSubscriptionSetting och parametern -StagingAreaPath
.
Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -StagingAreaPath "C:\StagingArea"
I exemplet ovan anges mellanlagringsområdet till C:\StagingArea i PowerShell-objektet $setting
. Kontrollera att den angivna mappen redan finns, annars misslyckas den slutliga incheckningen av prenumerationsinställningarna.
Krypteringsinställningar
Säkerhetskopieringsdata som skickas till Azure Backup krypteras för att skydda datasekretessen. Krypteringslösenfrasen är "lösenordet" för att dekryptera data vid tidpunkten för återställningen. Det är viktigt att hålla den här informationen säker och säker när den har angetts.
I exemplet nedan konverterar det första kommandot strängen passphrase123456789
till en säker sträng och tilldelar den säkra strängen till variabeln med namnet $Passphrase
. Det andra kommandot anger den säkra strängen som $Passphrase
lösenord för kryptering av säkerhetskopior.
$Passphrase = ConvertTo-SecureString -string "passphrase123456789" -AsPlainText -Force
Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -EncryptionPassphrase $Passphrase
Viktigt!
Håll lösenfrasens information säker och säker när den har angetts. Du kommer inte att kunna återställa data från Azure utan den här lösenfrasen.
Nu bör du ha gjort alla nödvändiga ändringar i $setting
objektet. Kom ihåg att checka in ändringarna.
Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -Commit
Skydda data till Azure Backup
I det här avsnittet lägger du till en produktionsserver i DPM och skyddar sedan data till lokal DPM-lagring och sedan till Azure Backup. I exemplen visar vi hur du säkerhetskopierar filer och mappar. Logiken kan enkelt utökas för att säkerhetskopiera alla DPM-datakällor som stöds. Alla dina DPM-säkerhetskopior styrs av en skyddsgrupp (PG) med fyra delar:
- Gruppmedlemmar är en lista över alla skyddsbara objekt (även kallade datakällor i DPM) som du vill skydda i samma skyddsgrupp. Du kanske till exempel vill skydda virtuella produktionsdatorer i en skyddsgrupp och SQL Server-databaser i en annan skyddsgrupp eftersom de kan ha olika krav på säkerhetskopiering. Innan du kan säkerhetskopiera datakällor på en produktionsserver måste du kontrollera att DPM-agenten är installerad på servern och hanteras av DPM. Följ stegen för att installera DPM-agenten och länka den till lämplig DPM-server.
- Dataskyddsmetoden anger målplatserna för säkerhetskopiering – band, disk och moln. I vårt exempel skyddar vi data till den lokala disken och till molnet.
- Ett schema för säkerhetskopiering som anger när säkerhetskopior behöver göras och hur ofta data ska synkroniseras mellan DPM-servern och produktionsservern.
- Ett kvarhållningsschema som anger hur länge återställningspunkterna ska behållas i Azure.
Skapa en skyddsgrupp
Börja med att skapa en ny skyddsgrupp med cmdleten New-DPMProtectionGroup .
$PG = New-DPMProtectionGroup -DPMServerName " TestingServer " -Name "ProtectGroup01"
Cmdleten ovan skapar en skyddsgrupp med namnet ProtectGroup01. En befintlig skyddsgrupp kan också ändras senare för att lägga till säkerhetskopiering i Azure-molnet. Men för att göra ändringar i skyddsgruppen – ny eller befintlig – måste vi få ett handtag på ett ändringsbart objekt med cmdleten Get-DPMModifiableProtectionGroup .
$MPG = Get-ModifiableProtectionGroup $PG
Lägga till gruppmedlemmar i skyddsgruppen
Varje DPM-agent känner till listan över datakällor på servern som den är installerad på. Om du vill lägga till en datakälla i skyddsgruppen måste DPM-agenten först skicka en lista över datakällorna tillbaka till DPM-servern. En eller flera datakällor väljs sedan och läggs till i skyddsgruppen. De PowerShell-steg som krävs för att uppnå detta är:
- Hämta en lista över alla servrar som hanteras av DPM via DPM-agenten.
- Välj en specifik server.
- Hämta en lista över alla datakällor på servern.
- Välj en eller flera datakällor och lägg till dem i skyddsgruppen
Listan över servrar där DPM-agenten är installerad och hanteras av DPM-servern hämtas med cmdleten Get-DPMProductionServer . I det här exemplet ska vi filtrera och endast konfigurera PowerShell med namnet productionserver01 för säkerhetskopiering.
$server = Get-ProductionServer -DPMServerName "TestingServer" | Where-Object {($_.servername) –contains "productionserver01"}
Hämta nu listan med datakällor på $server
med cmdleten Get-DPMDatasource . I det här exemplet filtrerar vi för den volym D:\
som vi vill konfigurera för säkerhetskopiering. Den här datakällan läggs sedan till i skyddsgruppen med hjälp av cmdleten Add-DPMChildDatasource . Kom ihåg att använda det ändringsbara skyddsgruppsobjektet $MPG
för att göra tilläggen.
$DS = Get-Datasource -ProductionServer $server -Inquire | Where-Object { $_.Name -contains "D:\" }
Add-DPMChildDatasource -ProtectionGroup $MPG -ChildDatasource $DS
Upprepa det här steget så många gånger som krävs tills du har lagt till alla valda datakällor i skyddsgruppen. Du kan också börja med bara en datakälla och slutföra arbetsflödet för att skapa skyddsgruppen och senare lägga till fler datakällor i skyddsgruppen.
Välj dataskyddsmetod
När datakällorna har lagts till i skyddsgruppen är nästa steg att ange skyddsmetoden med hjälp av cmdleten Set-DPMProtectionType . I det här exemplet konfigureras skyddsgruppen för lokal disk och molnsäkerhetskopiering. Du måste också ange den datakälla som du vill skydda till molnet med hjälp av cmdleten Add-DPMChildDatasource med flaggan -Online.
Set-DPMProtectionType -ProtectionGroup $MPG -ShortTerm Disk –LongTerm Online
Add-DPMChildDatasource -ProtectionGroup $MPG -ChildDatasource $DS –Online
Ange kvarhållningsintervallet
Ange kvarhållning för säkerhetskopieringspunkterna med hjälp av cmdleten Set-DPMPolicyObjective . Även om det kan verka konstigt att ange kvarhållningen innan säkerhetskopieringsschemat har definierats, anger cmdleten Set-DPMPolicyObjective
automatiskt ett standardschema för säkerhetskopiering som sedan kan ändras. Det är alltid möjligt att ange säkerhetskopieringsschemat först och kvarhållningsprincipen efter.
I exemplet nedan anger cmdleten kvarhållningsparametrarna för disksäkerhetskopior. Detta behåller säkerhetskopior i 10 dagar och synkroniserar data var 6:e timme mellan produktionsservern och DPM-servern. SynchronizationFrequencyMinutes
Definierar inte hur ofta en säkerhetskopieringspunkt skapas, utan hur ofta data kopieras till DPM-servern. Den här inställningen förhindrar att säkerhetskopior blir för stora.
Set-DPMPolicyObjective –ProtectionGroup $MPG -RetentionRangeInDays 10 -SynchronizationFrequencyMinutes 360
För säkerhetskopior som går till Azure (DPM refererar till dem som onlinesäkerhetskopior) kan kvarhållningsintervallen konfigureras för långsiktig kvarhållning med hjälp av ett Farfar-Fader-Son-schema (GFS). Det innebär att du kan definiera en kombinerad kvarhållningsprincip som omfattar principer för dagliga, veckovisa, månatliga och årliga kvarhållningsprinciper. I det här exemplet skapar vi en matris som representerar det komplexa kvarhållningsschema som vi vill använda och konfigurerar sedan kvarhållningsintervallet med hjälp av cmdleten Set-DPMPolicyObjective .
$RRlist = @()
$RRList += (New-Object -TypeName Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.RetentionRange -ArgumentList 180, Days)
$RRList += (New-Object -TypeName Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.RetentionRange -ArgumentList 104, Weeks)
$RRList += (New-Object -TypeName Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.RetentionRange -ArgumentList 60, Month)
$RRList += (New-Object -TypeName Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.RetentionRange -ArgumentList 10, Years)
Set-DPMPolicyObjective –ProtectionGroup $MPG -OnlineRetentionRangeList $RRlist
Ange säkerhetskopieringsschemat
DPM anger automatiskt ett standardschema för säkerhetskopiering om du anger skyddsmålet med hjälp av cmdleten Set-DPMPolicyObjective
. Om du vill ändra standardscheman använder du cmdleten Get-DPMPolicySchedule följt av cmdleten Set-DPMPolicySchedule .
$onlineSch = Get-DPMPolicySchedule -ProtectionGroup $mpg -LongTerm Online
Set-DPMPolicySchedule -ProtectionGroup $MPG -Schedule $onlineSch[0] -TimesOfDay 02:00
Set-DPMPolicySchedule -ProtectionGroup $MPG -Schedule $onlineSch[1] -TimesOfDay 02:00 -DaysOfWeek Sa,Su –Interval 1
Set-DPMPolicySchedule -ProtectionGroup $MPG -Schedule $onlineSch[2] -TimesOfDay 02:00 -RelativeIntervals First,Third –DaysOfWeek Sa
Set-DPMPolicySchedule -ProtectionGroup $MPG -Schedule $onlineSch[3] -TimesOfDay 02:00 -DaysOfMonth 2,5,8,9 -Months Jan,Jul
Set-DPMProtectionGroup -ProtectionGroup $MPG
I exemplet ovan $onlineSch
är en matris med fyra element som innehåller det befintliga onlineskyddsschemat för skyddsgruppen i GFS-schemat:
$onlineSch[0]
innehåller det dagliga schemat$onlineSch[1]
innehåller veckoschemat$onlineSch[2]
innehåller månadsschemat$onlineSch[3]
innehåller årsschemat
Så om du behöver ändra veckoschemat måste du referera till $onlineSch[1]
.
Den första säkerhetskopieringen
När du säkerhetskopierar en datakälla för första gången behöver DPM skapa en första replik som skapar en fullständig kopia av datakällan som ska skyddas på DPM-replikvolymen. Den här aktiviteten kan antingen schemaläggas under en viss tid eller utlösas manuellt med hjälp av cmdleten Set-DPMReplicaCreationMethod med parametern -NOW
.
Set-DPMReplicaCreationMethod -ProtectionGroup $MPG -NOW
Ändra storleken på DPM-replik- och återställningspunktvolymen
Du kan också ändra storleken på DPM-replikvolymen och shadow copy-volymen med hjälp av cmdleten Set-DPMDatasourceDiskAllocation som i följande exempel: Get-DatasourceDiskAllocation -Datasource $DS Set-DatasourceDiskAllocation -Datasource $DS -ProtectionGroup $MPG -manual -ReplicaArea (2gb) -ShadowCopyArea (2 gb)
Checka in ändringarna i skyddsgruppen
Slutligen måste ändringarna genomföras innan DPM kan utföra säkerhetskopieringen enligt den nya skyddsgruppens konfiguration. Detta kan uppnås med hjälp av cmdleten Set-DPMProtectionGroup .
Set-DPMProtectionGroup -ProtectionGroup $MPG
Visa säkerhetskopieringspunkterna
Du kan använda cmdleten Get-DPMRecoveryPoint för att hämta en lista över alla återställningspunkter för en datakälla. I det här exemplet kommer vi att:
- hämta alla PG:er på DPM-servern och lagrade i en matris
$PG
- hämta de datakällor som motsvarar
$PG[0]
- hämta alla återställningspunkter för en datakälla.
$PG = Get-DPMProtectionGroup –DPMServerName "TestingServer"
$DS = Get-DPMDatasource -ProtectionGroup $PG[0]
$RecoveryPoints = Get-DPMRecoverypoint -Datasource $DS[0] -Online
Återställa data som skyddas i Azure
Att återställa data är en kombination av ett RecoverableItem
objekt och ett RecoveryOption
objekt. I föregående avsnitt fick vi en lista över säkerhetskopieringspunkterna för en datakälla.
I exemplet nedan visar vi hur du återställer en virtuell Hyper-V-dator från Azure Backup genom att kombinera säkerhetskopieringspunkter med målet för återställning. I det här exemplet ingår:
- Skapa ett återställningsalternativ med cmdleten New-DPMRecoveryOption .
- Hämtar matrisen med säkerhetskopieringspunkter med hjälp av cmdleten
Get-DPMRecoveryPoint
. - Välja en säkerhetskopieringspunkt att återställa från.
$RecoveryOption = New-DPMRecoveryOption -HyperVDatasource -TargetServer "HVDCenter02" -RecoveryLocation AlternateHyperVServer -RecoveryType Recover -TargetLocation "C:\VMRecovery"
$PG = Get-DPMProtectionGroup –DPMServerName "TestingServer"
$DS = Get-DPMDatasource -ProtectionGroup $PG[0]
$RecoveryPoints = Get-DPMRecoverypoint -Datasource $DS[0] -Online
Restore-DPMRecoverableItem -RecoverableItem $RecoveryPoints[0] -RecoveryOption $RecoveryOption
Kommandona kan enkelt utökas för alla typer av datakällor.
Nästa steg
- Mer information om DPM till Azure Backup finns i Introduktion till DPM-säkerhetskopiering