Roman Milert - Fotolia

Sauvegarde : comment créer des snapshots de vos VMs Azure

Cet article détaille les bonnes pratiques pour générer des sauvegardes instantanées (« snapshots ») de vos machines virtuelles sur Azure, le cloud public de Microsoft, et les restaurer.

Les snapshots sont un moyen éprouvé et fiable de sauvegarder une copie ponctuelle – un « instantané » – d’une machine virtuelle, afin que les utilisateurs puissent facilement revenir en arrière en cas de besoin. Sur Microsoft Azure, cependant, les snapshots ne sont pas les mêmes que ceux que manipule d’ordinaire un administrateur système sur site.

Sur Azure, les administrateurs ne peuvent pas remettre une machine virtuelle (VM) dans l’état de l’un de ses snapshots en quelques clics. Ils doivent créer une nouvelle machine virtuelle Azure et, pour son stockage, utiliser le contenu du snapshot. Cette différence présente un avantage : les snapshots faits sur Azure peuvent servir à créer des répliques d’une VM, ce qui est utile pour mener des tests.

Dans cet article, nous allons apprendre à créer et à utiliser des snapshots de machines virtuelles Azure dans le but de personnaliser une sauvegarde.

Que sont les snapshots Azure et comment fonctionnent-ils ?

Les snapshots Azure existent en tant qu’outil de sauvegarde pour garantir que l’administrateur dispose d’une copie conforme des disques d’une machine virtuelle. Les snapshots Azure peuvent également être clonés sous la forme d’autres VMs. Les utilisateurs peuvent créer des snapshots de machines virtuelles Azure à l’aide de PowerShell ou d’Azure CLI.

Voici les bonnes pratiques à garder en tête lorsque vous créez et utilisez des snapshots Azure :

- Dans la mesure du possible, créez le snapshot Azure lorsque la machine est éteinte ; cela évite les incohérences sur le disque. Si la machine virtuelle n’est pas déjà éteinte, elle le sera lorsque l’instantané sera capturé.

- Ne conservez pas les snapshots plus longtemps que nécessaire ; ils coûtent cher et peuvent nuire aux performances.

- N’utilisez pas les snapshots comme stratégie de sauvegarde à long terme. Utilisez plutôt Azure Backup, qui ne nécessite aucune interaction humaine, ce qui réduit les erreurs de manipulation et autres risques.

Les équipes IT peuvent utiliser un snapshot Azure pour effectuer les tâches suivantes :

- une sauvegarde personnalisée,

- la restauration et la reconstruction d’une VM,

- la reprise d’activité après sinistre,

- le remplacement du volume de démarrage (avec un nouvel OS) sans avoir besoin de créer une nouvelle VM,

- une copie d’une VM,

- l’investigation pour résoudre les problèmes d’une VM.

Créer un snapshot depuis le portail Azure

Pour créer le snapshot d’une VM Azure, naviguez sur le portail Azure et sélectionnez Créer une ressource. Utilisez la fonction de recherche et tapez « snap » pour créer un snapshot de base. La fonction des Snapshots apparaîtra dans les raccourcis. Cliquez sur le lien pour ouvrir la rubrique dédiée, comme le montre la figure 1.

Rubrique pour snapshot Azure
Figure 1. Rubrique pour snapshot Azure

Cliquez sur le bouton Ajouter pour créer le nouveau snapshot Azure. Une fois l’assistant Snapshot ouvert, renseignez les propriétés suivantes :

- Sélectionnez le groupe de ressources auquel le serveur appartient.

- Donnez un nom au snapshot.

- Sélectionnez les disques dont vous avez besoin. Sélectionnez tous les disques si vous créez une sauvegarde d’appoint.

Terminez en cliquant sur Revoir et créer.

Créer un Snapshot avec PowerShell

Les administrateurs peuvent également créer des snapshots avec PowerShell. Ils devront définir plusieurs variables, appeler la commande New-AzSnapshot et passer ces variables comme paramètres. Cette approche nécessite que les administrateurs installent le plugin Azure PowerShell.

Microsoft propose un exemple de script pour gérer cette tâche dans PowerShell. Pour l’exécuter sur vos VMs, il suffit de remplacer les trois premières variables dans la première étape ci-dessous. Vous devrez également renseigner des variables de configuration supplémentaires avant de créer le nouveau snapshot, lors de la dernière commande.

Le code ci-dessous, fourni par Microsoft, montre comment copier le disque VHD d’une VM et créer la configuration du snapshot. Suivez ces quatre étapes :

1/ Définissez les paramètres

$resourceGroup = 'MyTTExample'
$location= 'southcentralus'

$vmName = "SnapExample"
$snapshotName = 'ExampleSnap'

2/ Récupérez la VM

$vm = Get-AzVM `
     -ResourceGroupName $resourceGroup
     -Name $vmName

3/ Créez la configuration du snapshot

$snapshot =  New-AzSnapshotConfig `
    -SourceUri $vm.StorageProfile.OsDisk.ManagedDisk.Id `
    -Location $location `
    -CreateOption copy

4/ Lancez le snapshot

New-AzSnapshot `
    -Snapshot $snapshot `
    -SnapshotName $snapshotName `
    -ResourceGroupName $resourceGroup

Voici visuellement comment se passe l’exécution du script :

Exemple de script de snapshot Azure
Figure 2. Exemple de script de snapshot Azure

Créer un snapshot avec Azure CLI

Le dernier moyen offert par Azure pour créer un snapshot est l’interface en ligne de commande d’Azure, le CLI, depuis laquelle on exécute les instructions az. Il faut tout d’abord installer le CLI Azure et se connecter, ou utiliser Cloud Shell.

Dans cet exemple, la commande az snapshot create est utilisée avec le paramètre --source-disk. Cet exemple d’instantané de sauvegarde de disque d’OS est créé en deux étapes :

1/ Utilisez az vm show pour récupérer l’ID du disque.

osDiskId=$(az vm show \ 
   -g myResourceGroup \ 
   -n myVM \ 
   --query "storageProfile.osDisk.managedDisk.id" \ 
   -o tsv) 

2/ Utilisez az snapshot pour créer un snapshot appelé Disk-backup

az snapshot create \ 
   -g myResourceGroup \ 
   --source "$DiskId" \ 
   --name osDisk-backup 

Les disques gérés par Azure, via Azure Managed Disks

Les administrateurs peuvent également utiliser les snapshots générés automatiquement par Azure Managed Disks pour reconstruire localement une VM ou effectuer une restauration d’un état antérieur sur la base d’un snapshot précédent. Notez que c’est le service Azure Disk Backup, distinct d’Azure Backup, qui protège les données dans les disques gérés par le service Azure Managed Disks. Il se charge par ailleurs de gérer le cycle de vie des snapshots (date de péremption, etc.).

Les administrateurs peuvent récupérer les disques de leurs VMs depuis Azure. Dans l’interface graphique, naviguez jusqu’à la rubrique Snapshot, sélectionnez le snapshot souhaité et cliquez sur Snapshot export, puis suivez l’assistant.

Utilisez l’URL de téléchargement, en l’occurrence un lien HTTP pour récupérer l’image et la conserver localement. Il est préférable d’utiliser un outil de téléchargement qui gère la reprise automatique du transfert en cas d’interruption ponctuelle, d’autant plus qu’un snapshot est un gros fichier et que sa durée de téléchargement sera longue.

Lister les snapshots disponibles se fait par l’intermédiaire de la commande Get-AzSnapshot.

Pour convertir un snapshot en un disque entièrement géré par Azure Managed Disks, naviguez jusqu’au snapshot et cliquez sur create disk (créer un disque), comme indiqué sur la Figure 3. Le seul élément supplémentaire requis est un nom de disque. Donnez-lui un nom approprié et lancez la demande.

Créez un Azure snapshot disk
Figure 3. Créez un Azure snapshot disk

Une fois le disque créé, l’étape suivante consiste à créer la VM. Cliquez sur le disque nouvellement créé. Si le disque de données est valide, une option pour créer une VM à partir de celui-ci s’affichera.

Créez une VM à partir de votre Azure snapshot disk
Figure 4. Créez une VM à partir de votre Azure snapshot disk

L’assistant propose les options de configuration standards d’une VM, à modifier selon les besoins, et utilise par défaut le snapshot en guise de disque.

options de configuration de la VM Azure
Figure 5. options de configuration de la VM Azure

Pour approfondir sur Backup et protection de données

Close