Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze zelfstudie wordt beschreven hoe u een volledige VM herstelt met behulp van CLI.
Azure Backup maakt herstelpunten die worden opgeslagen in geografisch redundante Recovery Services-kluizen. Wanneer u vanaf een herstelpunt herstelt, kunt u de hele VM of afzonderlijke bestanden herstellen.
Zie Back up and restore Azure VMs with PowerShell (Back-ups maken en Azure-VM’s herstellen met PowerShell) voor meer informatie over het gebruik van PowerShell om een schijf te herstellen en een herstelde VM te maken.
Nu kunt u cli ook gebruiken om de back-upinhoud rechtstreeks te herstellen naar een virtuele machine (oorspronkelijk/nieuw), zonder de bovenstaande stappen afzonderlijk uit te voeren. Zie Gegevens herstellen naar virtuele machine met behulp van CLI voor meer informatie.
Vereisten
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Aan de slag met Azure Cloud Shell voor meer informatie.
Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren. Als u in Windows of macOS werkt, kunt u Azure CLI uitvoeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.
Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht az login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Zie Verifiëren bij Azure met behulp van Azure CLI voor andere aanmeldingsopties.
Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Zie Extensies gebruiken en beheren met de Azure CLIvoor meer informatie over extensies.
Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.
Voor deze zelfstudie is versie 2.0.18 of hoger Azure CLI vereist. Als u Azure Cloud Shell gebruikt, is de nieuwste versie al geïnstalleerd.
Deze zelfstudie vereist een Linux-VM die met Azure Backup is beschermd. Om het per ongeluk verwijderen van een VM en het herstelproces te simuleren, maakt u een VM op basis van een schijf in een herstelpunt. Zie Een back-up van een virtuele machine maken in Azure met de CLI als u een Linux-VM nodig hebt die is beschermd met Azure Backup.
Overzicht van back-ups voor Azure-VM's
Wanneer Azure een back-up begint, maakt de back-upextensie op de VM een momentopname van een bepaald tijdstip. De back-upextensie wordt geïnstalleerd op de VM wanneer de eerste back-up wordt aangevraagd. Azure Backup kan ook een momentopname van de onderliggende opslag maken als de VM niet wordt uitgevoerd ten tijde van de back-up.
Standaard maakt Azure Backup een back-up die consistent is met een bestandssysteem. Nadat Azure Backup de momentopname heeft gemaakt, worden de gegevens overgedragen naar de Recovery Services-kluis. Voor maximale efficiëntie identificeert Azure Backup welke gegevensblokken sinds de vorige back-up zijn gewijzigd. Alleen deze worden vervolgens overgedragen.
Wanneer de gegevensoverdracht is voltooid, wordt de momentopname verwijderd en wordt er een herstelpunt gemaakt.
Beschikbare herstelpunten voor een VIRTUELE machine weergeven
Voor het herstellen van een schijf selecteert u een herstelpunt als bron voor de te herstellen gegevens. Aangezien het standaardbeleid elke dag een herstelpunt maakt en gedurende 30 dagen bewaart, kunt u een reeks herstelpunten behouden waarmee u een bepaald tijdstip kunt kiezen om te herstellen.
Gebruik az backup recoverypoint list om een lijst met beschikbare herstelpunten te zien. De naam van het herstelpunt wordt gebruikt om schijven te herstellen. In deze zelfstudie willen we het meest recente beschikbare herstelpunt gebruiken. Met de parameter --query [0].name selecteert u als volgt de naam van het meest recente herstelpunt:
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
Een VM-schijf herstellen
Belangrijk
Het wordt sterk aanbevolen om Az CLI-versie 2.0.74 of hoger te gebruiken om alle voordelen van een snel herstel te kunnen gebruiken, waaronder het herstellen van beheerde schijven. Het is het beste als u altijd de meest recente versie gebruikt.
Herstellen van beheerde schijven
Als de VM waarvan een back-up is gemaakt, beheerde schijven bevat, en als het de bedoeling is dat beheerde schijven worden hersteld vanaf het herstelpunt, geeft u eerst een Azure-opslagaccount op. Dit opslagaccount wordt gebruikt om de VM-configuratie en de implementatiesjabloon op te slaan die later kunnen worden gebruikt om de VM te implementeren vanaf de herstelde schijven. Vervolgens geeft u ook een doelresourcegroep op waarin de beheerde schijven moeten worden hersteld.
Gebruik az storage account create om een opslagaccount te maken. De naam van het opslagaccount mag alleen kleine letters bevatten, en moet globaal uniek zijn. Vervang mystorageaccount door uw eigen unieke naam:
az storage account create \ --resource-group myResourceGroup \ --name mystorageaccount \ --sku Standard_LRSHerstel de schijf vanaf uw herstelpunt met az backup restore restore-disks. Vervang mystorageaccount door de naam van het opslagaccount dat u met de vorige opdracht hebt gemaakt. Vervang myRecoveryPointName door de naam van het herstelpunt dat u hebt verkregen met de uitvoer van de vorige opdracht az backup recoverypoint list. Geef ook een doelresourcegroep op waarin de beheerde schijven worden hersteld.
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 targetRGWaarschuwing
Geef een doelresourcegroep op voor herstel van beheerde schijven. Azure Backup biedt geen ondersteuning voor het herstellen van schijven als niet-beheerde schijven. Zie Verouderde herstelpunten herstellen van virtuele machines die niet-beheerde schijven hebben gebruikt.
Schijven herstellen naar tweede regio
De back-upgegevens worden gerepliceerd naar de secundaire regio wanneer u cross-region herstel inschakelt in de kluis waarin u uw VM's hebt beschermd. U kunt de back-upgegevens gebruiken om een herstelbewerking uit te voeren.
Als u schijven naar de secundaire regio wilt herstellen, gebruikt u het --use-secondary-region flag in de opdracht az backup restore restore-disks. Zorg ervoor dat u een doelopslagaccount opgeeft dat zich in de secundaire regio bevindt.
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
Zoneoverschrijdende herstelbewerking
U kunt Azure-zone vastgemaakte VM's herstellen in alle beschikbaarheidszones van dezelfde regio.
Als u een VM wilt herstellen naar een andere zone, specificeert u de TargetZoneNumber parameter in de opdracht az backup restore 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
Cross-zonale herstel wordt alleen ondersteund in scenario's waarin:
- De bron-VM is gebonden aan de zone en is NIET versleuteld.
- Het herstelpunt is alleen aanwezig in de vault-klasse. Momentopnamen alleen of momentopnamen en de kluislaag worden niet ondersteund.
- De hersteloptie is het maken van een nieuwe VIRTUELE machine of het herstellen van schijven. De optie Schijven vervangen vervangt de brongegevens; daarom is de optie beschikbaarheidszone niet van toepassing.
- VM's en schijven maken in dezelfde regio wanneer de kluis opslagredundantie ZRS is. Houd er rekening mee dat het niet werkt als de opslagredundantie van de kluis GRS is, ook al is de bron-VM aan een zone gekoppeld.
- VM's en schijven maken in de gekoppelde regio wanneer opslagredundantie van de kluis is ingeschakeld voor herstel tussen regio's via Cross-Region Restore en als de gekoppelde regio zones ondersteunt.
Niet-beheerde schijven terugzetten
Als het herstelpunt afkomstig is van een virtuele machine die niet-beheerde schijven heeft gebruikt, worden deze schijven alleen hersteld als beheerde schijven. Geef een Azure-opslagaccount op voor het opslaan van de VM-configuratie, implementatiesjabloon en tijdelijke VHD-bestanden en geef een doelresourcegroep op voor de herstelde beheerde schijven.
In aanvullende stappen worden de herstelde schijven gebruikt om een virtuele machine te maken.
Gebruik az storage account create om een opslagaccount te maken. De naam van het opslagaccount mag alleen kleine letters bevatten, en moet globaal uniek zijn. Vervang mystorageaccount door uw eigen unieke naam:
az storage account create \ --resource-group myResourceGroup \ --name mystorageaccount \ --sku Standard_LRSHerstel de schijf vanaf uw herstelpunt met az backup restore restore-disks. Vervang mystorageaccount door de naam van het opslagaccount dat u met de vorige opdracht hebt gemaakt. Vervang myRecoveryPointName door de naam van het herstelpunt dat u hebt verkregen met de uitvoer van de vorige opdracht az backup recoverypoint list. Geef ook de doelresourcegroep op voor de herstelde beheerde schijven:
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
Herstellen naar niet-beheerde schijven wordt niet ondersteund. Voor verouderde herstelpunten van VM's die niet-beheerde schijven hebben gebruikt, volgt u de richtlijnen in Verouderde herstelpunten herstellen van VM's die niet-beheerde schijven hebben gebruikt.
De hersteltaak bewaken
Als u de status van de hersteltaak wilt controleren, gebruikt u az backup job list:
az backup job list \
--resource-group myResourceGroup \
--vault-name myRecoveryServicesVault \
--output table
De uitvoer is vergelijkbaar met het volgende voorbeeld, dat laat zien dat de hersteltaak InProgress is.
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
Wanneer de Status van de hersteltaak Voltooid is, is de benodigde informatie (VM-configuratie en de implementatiesjabloon) hersteld in het opslagaccount.
Beheerde identiteit gebruiken om schijven te herstellen
Met Azure Backup kunt u ook beheerde identiteit (MSI) gebruiken tijdens het herstellen om toegang te krijgen tot opslagaccounts waarnaar schijven moeten worden hersteld. Deze optie wordt momenteel alleen ondersteund voor herstel van beheerde schijven.
Als u de systeemtoegewezen beheerde identiteit van de kluis wilt gebruiken om schijven te herstellen, geeft u een extra vlag --mi-system-assigned door aan de az backup restore restore-disks opdracht. Als u een door de gebruiker toegewezen beheerde identiteit wilt gebruiken, geef dan de parameter --mi-user-assigned op met de Azure Resource Manager-id van de beheerde identiteit van de kluis als waarde van de parameter. Raadpleeg dit artikel voor meer informatie over het inschakelen van beheerde identiteiten voor uw kluizen.
Een VM maken op basis van de herstelde schijf
De laatste stap is het maken van een VM vanaf de herstelde schijven. U kunt de implementatiesjabloon die is gedownload naar het opgegeven opslagaccount, gebruiken om de VM te maken.
De taakdetails ophalen
De resulterende taakdetails bevatten de sjabloon-URI die kan worden opgevraagd en geïmplementeerd. Gebruik de job show-opdracht om meer details te krijgen over de geactiveerde herstelde taak.
az backup job show \
-v myRecoveryServicesVault \
-g myResourceGroup \
-n 1fc2d55d-f0dc-4ca6-ad48-aca0fe5d0414
De uitvoer van deze query geeft alle details, maar we zijn alleen geïnteresseerd in de inhoud van het opslagaccount. We kunnen de querymogelijkheden van Azure CLI gebruiken om de relevante gegevens op te halen
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"
}
De implementatiesjabloon ophalen
De sjabloon is niet direct toegankelijk omdat deze zich onder het opslagaccount van de klant en de opgegeven container bevindt. We hebben de volledige URL nodig (samen met een tijdelijk SAS-token) om toegang te krijgen tot deze sjabloon.
Extraheer eerst de sjabloonblob-URI uit de taakdetails
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"
De sjabloonblob-URI heeft deze indeling, en de sjabloonnaam wordt geëxtraheerd
https://<storageAccountName.blob.core.windows.net>/<containerName>/<templateName>
De sjabloonnaam in het bovenstaande voorbeeld wordt dus azuredeploy1fc2d55d-f0dc-4ca6-ad48-aca0519c0232.json, en de naam van de container is myVM-daa1931199fd4a22ae601f46d8812276
Haal nu het SAS-token voor deze container en sjabloon op, zoals hier wordt beschreven
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)
De sjabloon implementeren om de VM te maken
Implementeer nu de sjabloon om de VM te maken, zoals hier wordt uitgelegd.
az deployment group create \
--resource-group ExampleGroup \
--template-uri $url?$token
Om te bevestigen dat uw VM van uw herstelde schijf is gemaakt, maakt u als volgt een lijst van de VM's in uw resourcegroep met az vm list:
az vm list --resource-group myResourceGroup --output table
Gegevens herstellen naar virtuele machine met behulp van CLI
U kunt nu gegevens rechtstreeks herstellen naar de oorspronkelijke/alternatieve VM zonder meerdere stappen uit te voeren.
Gegevens herstellen naar de oorspronkelijke VM
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
Met de laatste opdracht wordt een herstelbewerking op de oorspronkelijke locatie geactiveerd om de gegevens ter plaatse op de bestaande VM te herstellen.
Gegevens herstellen naar een zojuist gemaakte VIRTUELE machine
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
Met de laatste opdracht wordt een herstelbewerking voor een alternatieve locatie geactiveerd om een nieuwe VM te maken in Target_RG resourcegroep volgens de invoer die is opgegeven door de parameters TargetVMName, TargetVNetName, TargetVNetResourceGroup, TargetSubnetName. Dit zorgt ervoor dat de gegevens worden hersteld in de vereiste VM, het virtuele netwerk en het subnet.
Volgende stappen
In deze zelfstudie hebt u een schijf van een herstelpunt hersteld en vervolgens een VM van de schijf gemaakt. U hebt geleerd hoe u:
- Herstelpunten in een lijst opnemen en selecteren
- Een schijf herstellen vanaf een herstelpunt
- Een VM maken op basis van de herstelde schijf
Ga naar de volgende zelfstudie voor meer informatie over het herstellen van afzonderlijke bestanden van een herstelpunt.