Azure IaaS VM Backup-Restauration

Pour restaurer une VM, on a le choix entre deux options, la première est de remplacer ou d’écraser la VM existante et la deuxième est de créer carrément une nouvelle VM avec un autre nom.

  • Remplacer l’existant : utilisez cette option si vous souhaitez remplacer des disques sur une machine virtuelle existante.
  • Créer une nouvelle VM : utilisez cette option si vous souhaitez créer une nouvelle machine virtuelle.

Restaurer Une VM

Avec le portail Azure

Dans la liste des points de restauration d’une VM, choisir le point de restauration à restaurer et cliquez sur Restore VM :

Dans la configuration de la restauration, sélectionnez une option de restauration selon votre choix :

  • Option 1 : Replace existing

Dans cette option, vous remplacez un disque d’une VM existante par le point de restauration sélectionné :

  • Dans Restore Type : sélectionnez Replace Disk(s), dans ce cas, le point de restauration sera utilisé pour remplacer les disques de VM existants.
  • Dans Staging Location : Sélectionnez un compte de stockage pour spécifier où les instantanés des disques gérés actuels doivent être enregistrés pendant le processus de restauration.

Une fois l’opération de restauration est déclenchée, cliquez sur Backup Jobs pour surveiller la progression de la restauration.

Lorsqu’on remplace un disque sur une machine virtuelle existante, Azure Backup prend un instantané de la machine virtuelle existante avant de remplacer le disque. La capture instantanée est stockée dans l’emplacement de stockage intermédiaire (compte de stockage) qu’on a spécifié. C’est pour cela qu’on a deux Jobs pendant la restauration, un pour l’instantané et l’autre pour la restauration.

Pour voir le détail de chaque Job, cliquez dessus.

 

  • Option 2 : Create New

Dans cette option, vous créez une machine virtuelle à partir d’un point de restauration :

  • Dans Restore Type, sélectionnez Create virtual machine.
  • Dans Virtual machine name, spécifiez une machine virtuelle qui n’existe pas dans l’abonnement.
  • Dans Resource group, sélectionnez un groupe de ressources existant pour la nouvelle machine virtuelle.
  • Dans Virtual network, sélectionnez le réseau virtuel dans lequel la machine virtuelle sera placée. Tous les réseaux virtuels associés à l’abonnement sont affichés.
  • Dans Subnet, Sélectionnez le sous-réseau. Le premier sous-réseau est sélectionné par défaut.
  • Dans Storage Location, spécifiez le compte de stockage pour la machine virtuelle

 

Une fois l’opération de restauration est déclenchée, cliquez sur Backup Jobs pour surveiller la progression de la restauration.

 

Avec le PowerShell

Il existe une différence importante entre restaurer une machine virtuelle à l’aide du portail Microsoft Azure et restaurer une machine virtuelle à l’aide de PowerShell. Avec PowerShell, l’opération de restauration est terminée dès que sont créés les disques et les informations de configuration à partir d’un point de restauration. L’opération de restauration ne crée pas la machine virtuelle.

Les étapes de base pour restaurer une machine virtuelle Azure sont :

  • Sélectionnez la machine virtuelle.
  • Choisissez un point de récupération.
  • Restaurez les disques.
  • Créez la machine virtuelle à partir des disques stockés.

Ci-dessous le script de restauration d’une VM, il suffit de remplacer le nom de ta VM, le compte de stockage et la ressource groupe :

$namedContainer = Get-AzRecoveryServicesBackupContainer  -ContainerType "AzureVM" -Status "Registered" -FriendlyName "CGG-PRD-VM-SQL1"
$backupitem = Get-AzRecoveryServicesBackupItem -Container $namedContainer  -WorkloadType "AzureVM"
$startDate = (Get-Date).AddDays(-7)
$endDate = Get-Date
$rp = Get-AzRecoveryServicesBackupRecoveryPoint -Item $backupitem -StartDate $startdate.ToUniversalTime() -EndDate $enddate.ToUniversalTime()
$rp[0]
$restorejob = Restore-AzRecoveryServicesBackupItem -RecoveryPoint $rp[0] -StorageAccountName "azuressargvirt021818060" -StorageAccountResourceGroupName "SSA-RG" -TargetResourceGroupName "SSA-RG"
$restorejob = Get-AzRecoveryServicesBackupJob -Job $restorejob
$details = Get-AzRecoveryServicesBackupJobDetails -Job $restorejob

Une fois le Job de restauration terminé (Status : Completed), on déploie notre template pour créer une nouvelle VM, en attachant les disques restaurés.

Téléchargez le document json créé dans le compte de stockage en local et exécuter le script ci-dessous en remplaçant le ressource groupe et notre chemin local de notre fichier json :

New-AzResourceGroupDeployment -Name ModelDeployment -ResourceGroupName "SSA-RG" -TemplateFile 'C:\Scripts\azuredeployddb291e8-d1d0-4a89-86df-582233107f51.json'

Le plus facile est de déployer le template directement dans le portail Azure et dans le détail de notre job de restauration. Cliquez sur Deploy Template :

 

 

Restaurer un Fichier

Azure backup offre aussi la possibilité de récupérer des fichiers et des dossiers à partir d’une sauvegarde Azure VM.

Pour le faire, il faut monter le volume restauré sur la VM avec une autre lettre et copiez les fichiers ou répertoire concernés.

Avec le portail Azure

Dans le menu Tableau de bord de sauvegarde, cliquez sur File Recovery :

Le menu File Recovery s’ouvre, le recovery point est déjà sectionné car on a déjà choisi le recovery point dans la prise d’écran ci-dessus et téléchargé l’exécutable :

Une fois le fichier est téléchargé, exécutez le script sur la machine où vous souhaitez récupérer les fichiers. Pour exécuter le script, vous devez entrer le mot de passe fourni :

Tapez Q pour fermer la fenêtre de l’exécutable.

En se rendant maintenant sur l’explorateur de serveur, on constate qu’un disque de plus est attaché à la VM. Copiez les fichiers ou répertoire concernés et les écraser pour récupérer les versions souhaitées.

 

Pour démonter le disque, il suffit de cliquer Unmount Disks :

 

Avec PowerShell

Ce script génère le fichier exécutable dans le répertoire C:\Windows\System32 pour monter le volume en question.

Il faut remplacer le nom de la VM avec le nom de votre VM :

$namedContainer = Get-AzRecoveryServicesBackupContainer  -ContainerType "AzureVM" -Status "Registered" -FriendlyName "CGG-PRD-VM-SQL1"
$backupitem = Get-AzRecoveryServicesBackupItem -Container $namedContainer  -WorkloadType "AzureVM"
$startDate = (Get-Date).AddDays(-7)
$endDate = Get-Date
$rp = Get-AzRecoveryServicesBackupRecoveryPoint -Item $backupitem -StartDate $startdate.ToUniversalTime() -EndDate $enddate.ToUniversalTime()
$rp[1]
Get-AzRecoveryServicesBackupRPMountScript -RecoveryPoint $rp[1]

Exécutez le script sur la machine où vous souhaitez récupérer les fichiers. Pour exécuter le script, vous devez entrer le mot de passe fourni. Lorsque les disques sont attachés, utilisez l’Explorateur de fichiers Windows pour parcourir les nouveaux volumes et fichiers :

Tapez Q pour fermer la fenêtre de l’exécutable.

En se rendant maintenant sur l’explorateur de serveur, on constate qu’un disque de plus est attaché à la VM. Copiez les fichiers ou répertoires concernés et les écraser pour récupérer les versions souhaitées.

Pour démonter le disque, il suffit d’exécuter le script ci-dessous :

#Démonter le disque

Disable-AzRecoveryServicesBackupRPMountScript -RecoveryPoint $rp[1]