Sdílet prostřednictvím


Kurz: Obnovení virtuálního počítače pomocí Azure CLI

Tento kurz popisuje, jak obnovit kompletní virtuální počítač pomocí rozhraní příkazového řádku.

Azure Backup vytváří body obnovení, které jsou uložené v geograficky redundantních trezorech obnovení. Při obnovení z bodu obnovení můžete obnovit celý virtuální počítač nebo jednotlivé soubory.

Informace o použití PowerShellu k obnovení disku a vytvoření obnoveného virtuálního počítače najdete v tématu Zálohování a obnovení virtuálních počítačů Azure pomocí PowerShellu.

Teď můžete také pomocí rozhraní příkazového řádku přímo obnovit zálohovaný obsah na virtuální počítač (původní nebo nový), aniž byste provedli výše uvedené kroky samostatně. Další informace najdete v tématu Obnovení dat do virtuálního počítače pomocí rozhraní příkazového řádku.

Prerequisites

  • Tento kurz vyžaduje verzi 2.0.18 nebo novější azure CLI. Pokud používáte Azure Cloud Shell, je už nainstalovaná nejnovější verze.

  • Tento kurz vyžaduje virtuální počítač s Linuxem, který je chráněný službou Azure Backup. Pokud chcete simulovat náhodný proces odstranění a obnovení virtuálního počítače, vytvoříte virtuální počítač z disku v bodě obnovení. Pokud potřebujete virtuální počítač s Linuxem, který je chráněný službou Azure Backup, přečtěte si téma Zálohování virtuálního počítače v Azure pomocí rozhraní příkazového řádku.

Přehled zálohování pro virtuální počítače Azure

Když Azure zahájí zálohování, rozšíření zálohování na virtuálním počítači pořídí bodovou časovou kopii. Rozšíření zálohování se nainstaluje na virtuální počítač, když se vyžaduje první zálohování. Azure Backup může také pořídit snímek základního úložiště, pokud virtuální počítač není spuštěný při zálohování.

Azure Backup ve výchozím nastavení provádí zálohu, která je konzistentní se souborovým systémem. Jakmile Azure Backup pořídí snímek, data se přenesou do trezoru služby Recovery Services. Kvůli maximalizaci efektivity služba Azure Backup identifikuje a přenáší pouze bloky dat, které se od předchozího zálohování změnily.

Po dokončení přenosu dat se snímek odebere a vytvoří se bod obnovení.

Výpis dostupných bodů obnovení pro virtuální počítač

Pokud chcete obnovit disk, vyberte jako zdroj dat obnovení bod obnovení. Vzhledem k tomu, že výchozí zásada každý den vytváří bod obnovení a uchovává je po dobu 30 dnů, můžete zachovat sadu bodů obnovení, které vám umožní vybrat konkrétní bod v čase pro obnovení.

Pokud chcete zobrazit seznam dostupných bodů obnovení, použijte příkaz az backup recoverypoint list. Název bodu obnovení slouží k obnovení disků. V tomto tutoriálu chceme mít k dispozici nejnovější bod obnovení. Parametr --query [0].name vybere nejnovější název bodu obnovení následujícím způsobem:

az backup recoverypoint list \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --backup-management-type AzureIaasVM \
    --container-name myVM \
    --item-name myVM \
    --query [0].name \
    --output tsv

Obnovení disku virtuálního počítače

Important

Důrazně doporučujeme použít Az CLI verze 2.0.74 nebo novější, abyste získali všechny výhody rychlého obnovení, včetně obnovení spravovaného disku. Nejlepší je, pokud vždy používáte nejnovější verzi.

Obnovení spravovaného disku

Pokud má zálohovaný virtuální počítač spravované disky a pokud se jedná o obnovení spravovaných disků z bodu obnovení, nejprve zadáte účet úložiště Azure. Tento účet úložiště slouží k uložení konfigurace virtuálního počítače a šablony nasazení, kterou můžete později použít k nasazení virtuálního počítače z obnovených disků. Pak také zadáte cílovou skupinu prostředků, do které se mají spravované disky obnovit.

  1. Pokud chcete vytvořit účet úložiště, použijte az storage account create. Název účtu úložiště musí být malými písmeny a musí být globálně jedinečný. Nahraďte mystorageaccount vlastním jedinečným názvem:

    az storage account create \
        --resource-group myResourceGroup \
        --name mystorageaccount \
        --sku Standard_LRS
    
  2. Obnovte disk z bodu obnovení pomocí az backup restore restore-disks. Nahraďte mystorageaccount názvem účtu úložiště, který jste vytvořili v předchozím příkazu. Nahraďte myRecoveryPointName názvem bodu obnovení, který jste získali ve výstupu z předchozího příkazu az backup recoverypoint list . Také zadejte cílovou skupinu prostředků, do níž se obnoví spravované disky.

    az backup restore restore-disks \
        --resource-group myResourceGroup \
        --vault-name myRecoveryServicesVault \
        --container-name myVM \
        --item-name myVM \
        --storage-account mystorageaccount \
        --rp-name myRecoveryPointName \
        --target-resource-group targetRG
    

    Warning

    Pokud není uvedena cílová skupina prostředků, spravované disky budou do daného účtu úložiště obnoveny jako nespravované disky. To bude mít významný dopad na dobu obnovení, protože doba potřebná k obnovení disků zcela závisí na daném účtu úložiště. Výhodu okamžitého obnovení získáte jenom v případech, kdy je zadaný parametr target-resource-group. Pokud je záměrem obnovit spravované disky jako nespravované, nezadávejte parametr target-resource-group a místo toho zadejte parametr restore-as-unmanaged-disk , jak je znázorněno níže. Tento parametr je k dispozici v Azure CLI 3.4.0 dále.

    az backup restore restore-disks \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --container-name myVM \
    --item-name myVM \
    --storage-account mystorageaccount \
    --rp-name myRecoveryPointName \
    --restore-as-unmanaged-disk
    

Tímto se spravované disky obnoví jako nespravované disky do určeného účtu úložiště a nebudou využívat funkci okamžitého obnovení. V budoucích verzích CLI bude povinné zadat parametr cílová skupina prostředků nebo parametr restore-as-unmanaged-disk.

Obnova disků do sekundární oblasti

Zálohovaná data se replikují do sekundární oblasti, když v trezoru, v kterém chráníte své virtuální počítače, povolíte přesoblastní obnovení. K provedení operace obnovení můžete použít zálohovaná data.

Pokud chcete obnovit disky do sekundární oblasti, použijte --use-secondary-region příznak v příkazu az backup restore restore-disks . Ujistěte se, že zadáte cílový účet úložiště, který se nachází v sekundární oblasti.

az backup restore restore-disks \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --container-name myVM \
    --item-name myVM \
    --storage-account targetStorageAccountID \
    --rp-name myRecoveryPointName \
    --target-resource-group targetRG
    --use-secondary-region

Obnovení napříč zónovými daty

Připnuté virtuální počítače zóny Azure můžete obnovit v libovolné zóně dostupnosti stejné oblasti.

Pokud chcete virtuální počítač obnovit do jiné zóny, zadejte TargetZoneNumber parametr v příkazu az backup restore-disks .

az backup restore restore-disks \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --container-name myVM \
    --item-name myVM \
    --storage-account targetStorageAccountID \
    --rp-name myRecoveryPointName \
    --target-resource-group targetRG
    --target-zone 3

Obnovení napříč zónami je podporováno pouze ve scénářích, ve kterých:

  • Zdrojový virtuální počítač je připnutý do zóny a není šifrovaný.
  • Bod obnovení je k dispozici pouze na úrovni trezoru. Nepodporují se jenom snímky nebo vrstvy snímku a trezoru.
  • Možnost obnovení spočívá v vytvoření nového virtuálního počítače nebo obnovení disků. Možnost Nahradit disky nahrazuje zdrojová data; proto není možnost zóny dostupnosti použitelná.
  • Vytvoření virtuálního počítače nebo disků ve stejné oblasti, pokud je redundance úložiště trezoru ZRS. Mějte na paměti, že nefunguje, pokud je redundance úložiště trezoru GRS, i když je zdrojový virtuální počítač připnutý do zóny.
  • Vytvoření virtuálního počítače nebo disků ve spárované oblasti, když je pro obnovení úložiště mezi oblastmi povolená redundance úložiště trezoru a jestli spárovaná oblast podporuje zóny.

Obnovení nespravovaných disků

Pokud má zálohovaný virtuální počítač nespravované disky a pokud se jedná o obnovení disků z bodu obnovení, nejprve zadáte účet úložiště Azure. Tento účet úložiště slouží k uložení konfigurace virtuálního počítače a šablony nasazení, kterou můžete později použít k nasazení virtuálního počítače z obnovených disků. Ve výchozím nastavení budou nespravované disky obnoveny do původních účtů úložiště. Pokud chcete obnovit všechny nespravované disky na jedno místo, můžete pro tyto disky použít zadaný úložný účet také jako přechodné umístění.

V dalších krocích se obnovený disk použije k vytvoření virtuálního počítače.

  1. Pokud chcete vytvořit účet úložiště, použijte az storage account create. Název účtu úložiště musí být malými písmeny a musí být globálně jedinečný. Nahraďte mystorageaccount vlastním jedinečným názvem:

    az storage account create \
        --resource-group myResourceGroup \
        --name mystorageaccount \
        --sku Standard_LRS
    
  2. Obnovte disk z bodu obnovení pomocí az backup restore restore-disks. Nahraďte mystorageaccount názvem účtu úložiště, který jste vytvořili v předchozím příkazu. Nahraďte myRecoveryPointName názvem bodu obnovení, který jste získali ve výstupu z předchozího příkazu az backup recoverypoint list :

    az backup restore restore-disks \
        --resource-group myResourceGroup \
        --vault-name myRecoveryServicesVault \
        --container-name myVM \
        --item-name myVM \
        --storage-account mystorageaccount \
        --rp-name myRecoveryPointName
    

Jak je uvedeno výše, nespravované disky budou obnoveny na jejich původní účet úložiště. Tím zajistíte nejlepší možnou účinnost obnovení. Pokud je ale potřeba obnovit všechny nespravované disky do daného účtu úložiště, použijte příslušný příznak, jak je uvedeno níže.

    az backup restore restore-disks \
        --resource-group myResourceGroup \
        --vault-name myRecoveryServicesVault \
        --container-name myVM \
        --item-name myVM \
        --storage-account mystorageaccount \
        --rp-name myRecoveryPointName \
        --restore-to-staging-storage-account
    ```

## Monitor the restore job

To monitor the status of restore job, use [az backup job list](/cli/azure/backup/job#az-backup-job-list):

```azurecli-interactive
az backup job list \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --output table

Výstup je podobný následujícímu příkladu, který ukazuje, že úloha obnovení je InProgress:

Name      Operation        Status      Item Name    Start Time UTC       Duration
--------  ---------------  ----------  -----------  -------------------  --------------
7f2ad916  Restore          InProgress  myvm         2017-09-19T19:39:52  0:00:34.520850
a0a8e5e6  Backup           Completed   myvm         2017-09-19T03:09:21  0:15:26.155212
fe5d0414  ConfigureBackup  Completed   myvm         2017-09-19T03:03:57  0:00:31.191807

Když Stav úlohy obnovení hlásí Dokončeno, byly nezbytné informace (konfigurace virtuálního počítače a šablona nasazení) obnoveny do účtu úložiště.

Použití spravované identity k obnovení disků

Azure Backup také umožňuje používat spravovanou identitu (MSI) během operace obnovení pro přístup k účtům úložiště, do kterých je potřeba obnovit disky. Tato možnost je aktuálně podporovaná jenom pro obnovení spravovaného disku.

Pokud chcete k obnovení disků použít spravovanou identitu přiřazenou systémem trezoru, předejte do příkazu az backup restore-disks další příznak --mi-system. Pokud chcete použít uživatelsky přiřazenou spravovanou identitu, předejte parametr --mi-user-assigned s ID spravované identity trezoru v rámci Azure Resource Manager jako hodnotou parametru. V tomto článku se dozvíte, jak povolit spravovanou identitu pro vaše trezory.

Vytvoření virtuálního počítače z obnoveného disku

Posledním krokem je vytvoření virtuálního počítače z obnovených disků. K vytvoření virtuálního počítače můžete použít šablonu nasazení staženou do daného účtu úložiště.

Načti podrobnosti úlohy

Podrobné informace o výsledné úloze poskytují identifikátor URI šablony, který lze dotazovat a nasadit. Pomocí příkazu job show získáte další podrobnosti o spuštěné obnovené úloze.

az backup job show \
    -v myRecoveryServicesVault \
    -g myResourceGroup \
    -n 1fc2d55d-f0dc-4ca6-ad48-aca0fe5d0414

Výstup tohoto dotazu poskytne všechny podrobnosti, ale zajímá nás jenom obsah účtu úložiště. K načtení relevantních podrobností můžeme použít funkci dotazu v Azure CLI.

az backup job show \
    -v myRecoveryServicesVault \
    -g myResourceGroup \
    -n 1fc2d55d-f0dc-4ca6-ad48-aca0fe5d0414 \
    --query properties.extendedInfo.propertyBag

{
  "Config Blob Container Name": "myVM-daa1931199fd4a22ae601f46d8812276",
  "Config Blob Name": "config-myVM-1fc2d55d-f0dc-4ca6-ad48-aca0fe5d0414.json",
  "Config Blob Uri": "https://mystorageaccount.blob.core.windows.net/myVM-daa1931199fd4a22ae601f46d8812276/config-appvm8-1fc2d55d-f0dc-4ca6-ad48-aca0519c0232.json",
  "Job Type": "Recover disks",
  "Recovery point time ": "12/25/2019 10:07:11 PM",
  "Target Storage Account Name": "mystorageaccount",
  "Target resource group": "mystorageaccountRG",
  "Template Blob Uri": "https://mystorageaccount.blob.core.windows.net/myVM-daa1931199fd4a22ae601f46d8812276/azuredeploy1fc2d55d-f0dc-4ca6-ad48-aca0519c0232.json"
}

Načtení šablony nasazení

Šablona není přímo přístupná, protože se jedná o účet úložiště zákazníka a daný kontejner. Pro přístup k této šabloně potřebujeme úplnou adresu URL (spolu s dočasným tokenem SAS).

Nejprve extrahujte identifikátor URI objektu blob šablony z podrobností úlohy.

az backup job show \
    -v myRecoveryServicesVault \
    -g myResourceGroup \
    -n 1fc2d55d-f0dc-4ca6-ad48-aca0fe5d0414 \
    --query properties.extendedInfo.propertyBag."""Template Blob Uri"""

"https://mystorageaccount.blob.core.windows.net/myVM-daa1931199fd4a22ae601f46d8812276/azuredeploy1fc2d55d-f0dc-4ca6-ad48-aca0519c0232.json"

Identifikátor URI objektu blob šablony bude mít tento formát a z něj se extrahuje název šablony.

https://<storageAccountName.blob.core.windows.net>/<containerName>/<templateName>

Název šablony z výše uvedeného příkladu tedy bude azuredeploy1fc2d55d-f0dc-4ca6-ad48-aca0519c0232.json a název kontejneru je myVM-daa1931199fd4a22ae601f46d8812276

Teď získejte token SAS pro tento kontejner a šablonu, jak je podrobně popsáno tady.

expiretime=$(date -u -d '30 minutes' +%Y-%m-%dT%H:%MZ)
token=$(az storage blob generate-sas --account-name $storageAccountName --container-name $containerName --name $templateName --permissions r --expiry $expiretime --auth-mode login --as-user --https-only --output tsv)
url=$(az storage blob url --account-name $storageAccountName --container-name $containerName --name $templateName --output tsv --auth-mode login)

Nasazení šablony pro vytvoření virtuálního počítače

Teď nasaďte šablonu pro vytvoření virtuálního počítače, jak je vysvětleno tady.

az deployment group create \
  --resource-group ExampleGroup \
  --template-uri $url?$token

Pokud chcete ověřit, že se váš virtuální počítač vytvořil z obnoveného disku, vypište virtuální počítače ve vaší skupině prostředků pomocí příkazu az vm list následujícím způsobem:

az vm list --resource-group myResourceGroup --output table

Obnovení dat do virtuálního počítače pomocí rozhraní příkazového řádku

Teď můžete přímo obnovit data do původního nebo alternativního virtuálního počítače bez provedení několika kroků.

Obnovení dat do původního virtuálního počítače

az backup restore restore-disks \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --container-name myVM \
    --item-name myVM \
    --restore-mode OriginalLocation 
    --storage-account mystorageaccount \
    --rp-name myRecoveryPointName \ 
Name      Operation        Status      Item Name    Start Time UTC       Duration
--------  ---------------  ----------  -----------  -------------------  --------------
7f2ad916  Restore          InProgress  myVM         2017-09-19T19:39:52  0:00:34.520850

Poslední příkaz aktivuje operaci obnovení původního umístění, která obnoví data v existujícím virtuálním počítači.

Obnovení dat do nově vytvořeného virtuálního počítače

az backup restore restore-disks \
    --resource-group myResourceGroup \
    --vault-name myRecoveryServicesVault \
    --container-name myVM \
    --item-name myVM \
    --restore-mode AlternateLocation \
    --storage-account mystorageaccount \

--target-resource-group "Target_RG" \
    --rp-name myRecoveryPointName \
    --target-vm-name "TargetVirtualMachineName" \
    --target-vnet-name "Target_VNet" \
    --target-vnet-resource-group "Target_VNet_RG" \
    --target-subnet-name "targetSubNet"
Name      Operation        Status      Item Name    Start Time UTC       Duration
--------  ---------------  ----------  -----------  -------------------  --------------
7f2ad916  Restore          InProgress  myVM         2017-09-19T19:39:52  0:00:34.520850

Poslední příkaz aktivuje operaci obnovení alternativního umístění, která vytvoří nový virtuální počítač ve skupině prostředků Target_RG podle vstupů zadaných parametry TargetVMName, TargetVNetName, TargetVNetResourceGroup, TargetSubnetName. Tím se zajistí obnovení dat v požadovaném virtuálním počítači, virtuální síti a podsíti.

Další kroky

V tomto kurzu jste obnovili disk z bodu obnovení a pak z disku vytvořili virtuální počítač. Naučili jste se:

  • Vypsat a vybrat body obnovení
  • Obnovení disku z bodu obnovení
  • Vytvoření virtuálního počítače z obnoveného disku

V dalším kurzu se dozvíte, jak obnovit jednotlivé soubory z bodu obnovení.