Zálohování sdílené složky Azure pomocí PowerShellu
Tento článek popisuje, jak pomocí Azure PowerShellu zálohovat sdílenou složku Azure Files prostřednictvím trezoru služby Azure Backup Recovery Services.
Tento článek vysvětluje následující postupy:
- Nastavte PowerShell a zaregistrujte zprostředkovatele služby Recovery Services.
- Vytvořte trezor služby Recovery Services.
- Nakonfigurujte zálohování sdílené složky Azure.
- Spusťte úlohu zálohování.
Než začnete
Přečtěte si další informace o trezorech služby Recovery Services.
Projděte si referenční informace k rutinám Az.RecoveryServices v knihovně Azure.
Projděte si následující hierarchii objektů PowerShellu pro Recovery Services:
Nastavení PowerShell
Poznámka:
Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
Poznámka:
Azure PowerShell v současné době nepodporuje zásady zálohování s hodinovým plánem. Tuto funkci využijete pomocí webu Azure Portal. Další informace
Následujícím způsobem nastavte PowerShell:
Stáhněte si nejnovější verzi Azure PowerShellu.
Poznámka:
Minimální verze PowerShellu požadovaná pro zálohování sdílených složek Azure je Az.RecoveryServices 2.6.0. Použití nejnovější verze nebo minimálně minimální verze vám pomůže vyhnout se problémům se stávajícími skripty. Pomocí následujícího příkazu PowerShellu nainstalujte minimální verzi:
Install-module -Name Az.RecoveryServices -RequiredVersion 2.6.0
Pomocí následujícího příkazu vyhledejte rutiny PowerShellu pro Azure Backup:
Get-Command *azrecoveryservices*
Projděte si aliasy a rutiny pro Azure Backup, Azure Site Recovery a trezor služby Recovery Services. Tady je příklad toho, co se může zobrazit. Nejedná se o úplný seznam rutin.
Přihlaste se ke svému účtu Azure pomocí Connect-AzAccount.
Na zobrazené webové stránce se zobrazí výzva k zadání přihlašovacích údajů k účtu.
Případně můžete do rutiny Connect-AzAccount zahrnout přihlašovací údaje svého účtu jako parametr pomocí parametru -Credential.
Pokud jste partner CSP pracující jménem tenanta, zadejte zákazníka jako tenanta. Použijte ID tenanta nebo primární název domény tenanta. Příkladem je Connect-AzAccount -tenant "fabrikam.com".
Přidružte předplatné, které chcete použít k účtu, protože účet může mít několik předplatných:
Select-AzSubscription -SubscriptionName $SubscriptionName
Pokud službu Azure Backup používáte poprvé, pomocí rutiny Register-AzResourceProvider zaregistrujte poskytovatele služby Azure Recovery Services ve vašem předplatném:
Register-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
Ověřte, že poskytovatelé úspěšně zaregistrovali:
Get-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
Ve výstupu příkazu ověřte, že se stav RegistrationState změní na Registrované. Pokud ne, spusťte znovu rutinu Register-AzResourceProvider .
Vytvoření trezoru služby Recovery Services
Trezor služby Recovery Services je prostředek Resource Manageru, takže ho musíte umístit do skupiny prostředků. Můžete použít existující skupinu prostředků nebo můžete vytvořit skupinu prostředků pomocí rutiny New-AzResourceGroup . Při vytváření skupiny prostředků zadejte název a umístění pro ni.
Při vytváření trezoru služby Recovery Services postupujte takto:
Pokud nemáte existující skupinu prostředků, vytvořte novou pomocí rutiny New-AzResourceGroup . V tomto příkladu vytvoříme skupinu prostředků v oblasti USA – západ:
New-AzResourceGroup -Name "test-rg" -Location "West US"
K vytvoření trezoru použijte rutinu New-AzRecoveryServicesVault . Zadejte stejné umístění pro trezor, který jste použili pro skupinu prostředků.
New-AzRecoveryServicesVault -Name "testvault" -ResourceGroupName "test-rg" -Location "West US"
Zobrazení trezorů v předplatném
Pokud chcete zobrazit všechny trezory v předplatném, použijte rutinu Get-AzRecoveryServicesVault:
Get-AzRecoveryServicesVault
Výstup je podobný následujícímu. Všimněte si, že výstup poskytuje přidruženou skupinu prostředků a umístění.
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
Nastavení kontextu trezoru
Uložte objekt trezoru do proměnné a nastavte kontext trezoru.
Mnoho rutin Azure Backup vyžaduje jako vstup objekt trezoru služby Recovery Services, takže je vhodné uložit objekt trezoru do proměnné.
Kontext trezoru představuje typ chráněných dat v trezoru. Nastavte ji pomocí Set-AzRecoveryServicesVaultContext. Po nastavení kontextu se použije pro všechny následné rutiny.
Následující příklad nastaví kontext trezoru pro testvault:
Get-AzRecoveryServicesVault -Name "testvault" | Set-AzRecoveryServicesVaultContext
Načtení ID trezoru
Plánujeme vyřazení nastavení kontextu trezoru v souladu s pokyny Azure PowerShellu. Místo toho můžete uložit nebo načíst ID trezoru a předat ho relevantním příkazům. Pokud jste nenastavili kontext trezoru nebo chcete zadat příkaz ke spuštění pro určitý trezor, předejte ID -vaultID
trezoru následujícím způsobem:
$vaultID = Get-AzRecoveryServicesVault -ResourceGroupName "Contoso-docs-rg" -Name "testvault" | select -ExpandProperty ID
New-AzRecoveryServicesBackupProtectionPolicy -Name "NewAFSPolicy" -WorkloadType "AzureFiles" -RetentionPolicy $retPol -SchedulePolicy $schPol -VaultID $vaultID
Konfigurace zásad zálohování
Zásady zálohování určují plán zálohování a dobu uchovávání bodů obnovení záloh.
Zásady zálohování jsou přidružené alespoň k jedné zásadě uchovávání informací. Zásady uchovávání informací definují, jak dlouho se bod obnovení uchovává před odstraněním. Zálohy můžete nakonfigurovat pomocí denního, týdenního, měsíčního nebo ročního uchovávání. Pomocí několika zásad zálohování můžete také nakonfigurovat uchovávání záloh po hodinách.
Důležité
Pro zásady zálohování se používají následující rutiny:
- Zobrazení výchozího uchovávání zásad zálohování pomocí .
Get-AzRecoveryServicesBackupRetentionPolicyObject
- Zobrazení výchozího plánu zásad zálohování pomocí .
Get-AzRecoveryServicesBackupSchedulePolicyObject
- Vytvořte novou zásadu zálohování pomocí příkazu
New-AzRecoveryServicesBackupProtectionPolicy
. Zadejte objekty zásad plánování a uchovávání informací jako vstupy.
Pokud chcete vytvořit zásadu zálohování, která konfiguruje více záloh denně, postupujte takto:
Načtěte objekt zásad plánu pomocí následující rutiny:
$schPol=Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType AzureFiles -BackupManagementType AzureStorage -ScheduleRunFrequency Hourly $schPol
Výstup je podobný tomuto:
ScheduleRunFrequency : Hourly ScheduleRunDays : ScheduleRunTimes : ScheduleInterval : 8 ScheduleWindowStartTime : 12/22/2021 8:00:00 AM ScheduleWindowDuration : 16 ScheduleRunTimeZone : India Standard Time
Podle potřeby nastavte různé parametry plánu.
$schpol.ScheduleInterval=4 $schpol.ScheduleWindowDuration=12
Předchozí konfigurace vám pomůže naplánovat 4 zálohy denně v intervalu od 8:00 do 8:00 (8:00+12 hodin). Můžete také nastavit časové pásmo, jak je uvedeno v následující rutině:
$timeZone= $timeZone=Get-TimeZone -ListAvailable |Where-Object{$_.Id-match "Russia Time Zone 11"} $schPol.ScheduleRunTimeZone=$timeZone.Id
Pokud chcete vytvořit zásadu s denním plánem, spusťte následující rutinu:
$UtcTime = Get-Date -Date "2019-03-20 01:30:00Z" $UtcTime = $UtcTime.ToUniversalTime() $schpol.ScheduleRunTimes[0] = $UtcTime
Načtěte objekt zásad uchovávání informací pomocí následující rutiny:
$retPol=Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType AzureFiles -BackupManagementType AzureStorage -ScheduleRunFrequency Hourly
Nastavte hodnoty uchovávání podle potřeby.
$retPol.DailySchedule.DurationCountInDays=15
Vytvořte novou zásadu zálohování pomocí rutiny New-AzRecoveryServicesBackupProtectionPolicy.
Objekty zásad plánování a uchovávání informací nastavené dříve jako vstupy můžete předat.
New-AzRecoveryServicesBackupProtectionPolicy -Name "FilesPolicytesting" -WorkloadType AzureFiles -RetentionPolicy $retpol -SchedulePolicy $schpol
Výstup zobrazí konfiguraci zásad:
Name WorkloadType BackupManagementType ScheduleFrequency BackupTime WindowStartTime Interval WindowDuration TimeZone (UTC) (Hours) ---- ------------ -------------------- ----------------- ------------ --------------- -------- -------------- -------- FilesPolicy testing AzureFiles AzureStorage Hourly 12/22/2021 8:00:00 AM 4 12 Russia Time Zone 11
Povolit zálohování
Po definování zásad zálohování můžete povolit ochranu sdílené složky Azure pomocí této zásady.
Načtení zásady zálohování
Načtete relevantní objekt zásad pomocí Rutiny Get-AzRecoveryServicesBackupProtectionPolicy. Pomocí této rutiny můžete zobrazit zásady přidružené k typu úlohy nebo získat konkrétní zásady.
Načtení zásad pro typ úlohy
Následující příklad načte zásady pro typ úlohy AzureFiles:
Get-AzRecoveryServicesBackupProtectionPolicy -WorkloadType "AzureFiles"
Výstup je podobný tomuto:
Name WorkloadType BackupManagementType BackupTime DaysOfWeek
---- ------------ -------------------- ---------- ----------
dailyafs AzureFiles AzureStorage 1/10/2018 12:30:00 AM
Poznámka:
Časové pásmo pole BackupTime v PowerShellu je ve standardu UTC. Když se čas zálohování zobrazí na webu Azure Portal, čas se upraví na místní časové pásmo.
Načtení konkrétní zásady
Následující zásada načte zásady zálohování s názvem dailyafs:
$afsPol = Get-AzRecoveryServicesBackupProtectionPolicy -Name "dailyafs"
Povolení ochrany a použití zásad
Povolte ochranu pomocí enable-AzRecoveryServicesBackupProtection. Po přidružení zásady k trezoru se zálohy aktivují v souladu s plánem zásad.
Následující příklad umožňuje ochranu sdílené složky Azure testAzureFS v testStorageAcct účtu úložiště se zásadami dailyafs:
Enable-AzRecoveryServicesBackupProtection -StorageAccountName "testStorageAcct" -Name "testAzureFS" -Policy $afsPol
Příkaz počká, až se úloha konfigurace ochrany dokončí, a zobrazí výstup podobný následujícímu příkladu:
WorkloadName Operation Status StartTime EndTime JobID
------------ --------- ------ --------- ------- -----
testAzureFS ConfigureBackup Completed 11/12/2018 2:15:26 PM 11/12/2018 2:16:11 PM ec7d4f1d-40bd-46a4-9edb-3193c41f6bf6
Další informace o tom, jak získat seznam sdílených složek pro účet úložiště, najdete v tomto článku.
Důležité upozornění: Identifikace zálohované položky
Tato část popisuje důležitou změnu záloh sdílených složek Azure při přípravě na obecnou dostupnost.
Když povolíte zálohování sdílených složek Azure, uživatel poskytne zákazníkovi název sdílené složky jako název entity a vytvoří se zálohovaná položka. Název zálohované položky je jedinečný identifikátor, který služba Azure Backup vytvoří. Identifikátor je obvykle uživatelsky přívětivý název. Pokud ale chcete zpracovat scénář obnovitelného odstranění, kdy je možné sdílenou složku odstranit a vytvořit jinou sdílenou složku se stejným názvem, jedinečná identita sdílené složky Azure je teď ID.
Pokud chcete zjistit jedinečné ID každé položky, spusťte příkaz Get-AzRecoveryServicesBackupItem s příslušnými filtry pro backupManagementType a WorkloadType, abyste získali všechny relevantní položky. Pak sledujte pole názvu ve vrácených objektech nebo odpovědích PowerShellu.
Doporučujeme vypsat položky a potom načíst jejich jedinečný název z pole názvu v odpovědi. Tuto hodnotu použijte k filtrování položek pomocí parametru Name . V opačném případě použijte parametr FriendlyName k načtení položky s ID.
Důležité
Ujistěte se, že je PowerShell upgradovaný na minimální verzi (Az.RecoveryServices 2.6.0) pro zálohy sdílených složek Azure. V této verzi je filtr FriendlyName k dispozici pro příkaz Get-AzRecoveryServicesBackupItem .
Předejte název sdílené složky Azure parametru FriendlyName . Pokud předáte název sdílené složky parametru Name , tato verze vyvolá upozornění, které předá název parametru FriendlyName .
Pokud nenainstalujete minimální verzi, může dojít k selhání existujících skriptů. Pomocí následujícího příkazu nainstalujte minimální verzi PowerShellu:
Install-module -Name Az.RecoveryServices -RequiredVersion 2.6.0
Aktivace zálohování na vyžádání
Pomocí backup-AzRecoveryServicesBackupItem spusťte zálohu na vyžádání pro chráněnou sdílenou složku Azure:
- Načtěte účet úložiště z kontejneru v trezoru, který uchovává zálohovaná data pomocí rutiny Get-AzRecoveryServicesBackupContainer.
- Pokud chcete spustit úlohu zálohování, získejte informace o sdílené složce Azure pomocí rutiny Get-AzRecoveryServicesBackupItem.
- Spusťte zálohování na vyžádání pomocí Backup-AzRecoveryServicesBackupItem.
Zálohování na vyžádání spusťte následujícím způsobem:
$afsContainer = Get-AzRecoveryServicesBackupContainer -FriendlyName "testStorageAcct" -ContainerType AzureStorage
$afsBkpItem = Get-AzRecoveryServicesBackupItem -Container $afsContainer -WorkloadType "AzureFiles" -FriendlyName "testAzureFS"
$job = Backup-AzRecoveryServicesBackupItem -Item $afsBkpItem
Příkaz vrátí úlohu s ID, které se má sledovat, jak je znázorněno v následujícím příkladu:
WorkloadName Operation Status StartTime EndTime JobID
------------ --------- ------ --------- ------- -----
testAzureFS Backup Completed 11/12/2018 2:42:07 PM 11/12/2018 2:42:11 PM 8bdfe3ab-9bf7-4be6-83d6-37ff1ca13ab6
Snímky sdílených složek Azure se používají při vytváření záloh. Úloha se obvykle dokončí v době, kdy příkaz vrátí tento výstup.
Další kroky
- Přečtěte si o zálohování služby Azure Files na webu Azure Portal.
- Projděte si ukázkový skript na GitHubu pro použití runbooku Azure Automation k naplánování zálohování.