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. Pokud chcete začít, přečtěte si 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.
Zvolte typ zásady:
Tady jsou některé rutiny pro zásady zálohování:
- Zobrazte výchozí uchovávání zásad zálohování pomocí rutin Get-AzRecoveryServicesBackupRetentionPolicyObject.
- Pomocí rutin Get-AzRecoveryServicesBackupSchedulePolicyObject zobrazte výchozí plán zásad zálohování.
- Vytvořte novou zásadu zálohování pomocí Rutiny New-AzRecoveryServicesBackupProtectionPolicy. Jako vstup zadáte objekty zásad plánování a uchovávání informací.
Ve výchozím nastavení je čas zahájení definován v objektu zásad plánu. Pomocí následujícího příkladu změňte počáteční čas na požadovaný čas zahájení. Požadovaný čas zahájení by měl být v univerzálním koordinovaném čase (UTC). Příklad předpokládá, že požadovaný čas zahájení je 01:00 UTC pro denní zálohy.
$schPol = Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType "AzureFiles"
$UtcTime = Get-Date -Date "2019-03-20 01:30:00Z"
$UtcTime = $UtcTime.ToUniversalTime()
$schpol.ScheduleRunTimes[0] = $UtcTime
Důležité
Musíte zadat počáteční čas pouze za 30 minut. V předchozím příkladu může být pouze 01:00:00 nebo 02:30:00. Čas zahájení nemůže být 01:15:00.
Následující příklad ukládá zásady plánu a zásady uchovávání informací do proměnných. Tyto proměnné pak použije jako parametry pro novou zásadu (NewAFSPolicy). NewAFSPolicy trvá denní zálohování a uchovává ho po dobu 30 dnů.
$schPol = Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType "AzureFiles"
$retPol = Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType "AzureFiles"
New-AzRecoveryServicesBackupProtectionPolicy -Name "NewAFSPolicy" -WorkloadType "AzureFiles" -RetentionPolicy $retPol -SchedulePolicy $schPol
Výstup je podobný tomuto:
Name WorkloadType BackupManagementType BackupTime DaysOfWeek
---- ------------ -------------------- ---------- ----------
NewAFSPolicy AzureFiles AzureStorage 10/24/2019 1:30:00 AM
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í.