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

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:

  1. 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
    
  2. Pomocí následujícího příkazu vyhledejte rutiny PowerShellu pro Azure Backup:

    Get-Command *azrecoveryservices*
    
  3. 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.

    Seznam rutin služby Recovery Services

  4. Přihlaste se ke svému účtu Azure pomocí Connect-AzAccount.

  5. 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".

  6. 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
    
  7. 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"
    
  8. Ověřte, že poskytovatelé úspěšně zaregistrovali:

    Get-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
    
  9. 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:

  1. 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"
    
  2. 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í:

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:

  1. Načtěte účet úložiště z kontejneru v trezoru, který uchovává zálohovaná data pomocí rutiny Get-AzRecoveryServicesBackupContainer.
  2. Pokud chcete spustit úlohu zálohování, získejte informace o sdílené složce Azure pomocí rutiny Get-AzRecoveryServicesBackupItem.
  3. 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