Comment traiter la sauvegarde AWS EC2 avec des snapshots EBS

Les instances EC2 d’Amazon Web Services (AWS) sont un moyen pratique d’exécuter des charges de travail sur des machines virtuelles (VM). Mais que se passe-t-il si le stockage auquel elles sont attachées échoue ou devient corrompu ? Il est temps de commencer à discuter d’une sauvegarde EC2 sur AWS.

Lorsque vous sauvegardez une instance EC2, vous parlez de Elastic Block Store (EBS), plus précisément de instantanés EBS. EC2 stocke tous les volumes avec EBS et prendre un instantané EBS est un excellent moyen de sauvegarder vos données.

Dans ce tutoriel, vous allez apprendre comment créer des instantanés EBS avec la Console de gestion AWS et l’Interface de ligne de commande AWS (AWS CLI).

Si vous souhaitez gérer les sauvegardes / instantanés EC2 facilement, assurez-vous de consulter Veeam Backup for AWS. Veeam se charge non seulement de la création des instantanés EBS, mais gère également la réplication, surveille intelligemment les blocs modifiés et fournit une API publique.

Prérequis

Cet article sera un tutoriel. Si vous prévoyez de suivre étape par étape, vous aurez besoin de ce qui suit :

La création de politique IAM et les permissions de l’API de programmation d’application AWS sont en dehors du champ d’application de cet article. Toujours adhérer au principe du moindre privilège lors de l’autorisation des comptes pour effectuer des actions.

  • Le AWS CLI installé et authentifié avec votre utilisateur IAM sur votre machine locale.

Création d’un instantané EBS depuis la console de gestion AWS

Il existe quelques différentes manières de créer des instantanés EBS. Commençons par créer des instantanés via la console de gestion AWS.

Les instantanés EBS peuvent entraîner des coûts de stockage. Pour plus d’informations sur le calcul de la facturation EBS, référez-vous à la Documentation AWS.

Navigation vers la console EC2

Pour commencer :

  1. Ouvrez la Console de gestion AWS et connectez-vous à votre compte AWS en fournissant vos identifiants de compte AWS (root) ou IAM.

2. Cliquez sur Services dans le coin supérieur gauche de votre écran.

AWS Management Console showing services drop-down menu.

3. Sélectionnez EC2 dans le menu déroulant Services. L’option EC2 est située sous la catégorie Compute, comme indiqué ci-dessous. Cette option vous dirigera vers la console EC2.

AWS Management Console showing services drop-down menu and EC2 selection.

Vous devriez maintenant être sur le tableau de bord Resources. Le tableau de bord Resources fournit un aperçu rapide des ressources liées à EC2 qui sont établies dans votre région sélectionnée. Sur la capture d’écran ci-dessous, vous pouvez voir que le tableau de bord des Resources de ce tutoriel indique que les éléments suivants sont établis pour l’utilisateur connecté dans la région US East (N. Virginia).

EC2 Console Resources Dashboard showing established resources.

Création d’un instantané EBS dans la console EC2

Une fois que vous avez navigué jusqu’à la console EC2 et que vous regardez votre région attendue, il est temps de créer un instantané EBS (sauvegarde AWS EC2). Pour accomplir cette tâche :

  1. Sélectionnez Instantanés sous Elastic Block Store dans le volet de navigation situé sur le côté gauche de l’écran.
EC2 Console showing Snapshots selection.

2. Ensuite, sélectionnez Créer un instantané en haut de votre écran. Sélectionner Créer un instantané vous amènera à un menu qui nécessite quelques saisies supplémentaires.

Snapshots section of the EC2 Console showing Create Snapshot selection.

3. Sur la page Créer un instantané, définissez le type de ressource sur Volume sous le champ Sélectionner le type de ressource. Définir le type de ressource sur Volume indique à AWS de capturer un instantané d’un seul volume EBS ; pas tous les volumes attachés à l’instance EC2.

Create Snapshot menu showing Volume and Instance selection.

4. Ensuite, sélectionnez l’ID du volume EBS à partir duquel vous souhaitez prendre un instantané dans le menu déroulant. L’ID du volume est un identifiant unique attribué à chaque Volume EBS. Dans la capture d’écran suivante, vous verrez que l’ID du volume de ce tutoriel vol-0b4f056a0b709240a est sélectionné.

Create Snapshot menu showing completed Volume field.

5. Maintenant, saisissez une description pour votre instantané EBS dans le champ Description. Le champ Description est facultatif et peut contenir jusqu’à 255 caractères.

Vous verrez cette description plus tard comme une propriété sur l’instantané EBS. Ce tutoriel utilisera Instantané de volume pour le blog ATA pour la description.

Create Snapshot menu showing the completed Description field.

6. Ensuite, vous pouvez taguer votre instantané EBS en utilisant des paires clé/valeur optionnelles. Les tags sont un moyen puissant de gérer et d’organiser vos ressources au sein d’AWS. Ce tutoriel utilisera des tags qui illustrent un cas d’utilisation courant pour un serveur.

D’autres tags courants incluent Nom, Propriétaire, Environnement et Objectif.

Create Snapshot menu showing completed Tag field.

7. Cliquez maintenant sur le bouton Créer un instantané pour créer l’instantané EBS.

Create Snapshot menu showing Create Snapshot selection.

Ce tutoriel n’a pas abordé le champ Chiffré. Les instantanés EBS créés à partir de volumes EBS non chiffrés ne peuvent pas être chiffrés lors de la création de l’instantané EBS. Pour chiffrer un instantané EBS pris à partir d’un volume EBS non chiffré, vous devez d’abord terminer l’instantané EBS non chiffré, copier l’instantané EBS non chiffré, et appliquer le chiffrement souhaité. Les instantanés pris à partir de volumes chiffrés sont automatiquement chiffrés.

8. Lorsque c’est terminé, la console EC2 vous affiche le message de réussite suivant. Rejetez le message en sélectionnant Fermer.

Message indicating success Snapshot Create Request.

Vous devriez maintenant voir l’instantané EBS répertorié dans la console avec un statut en attente. Il restera dans ce statut jusqu’à ce que tous les blocs de volume EBS modifiés soient transférés vers Amazon S3.

Snapshots section of the EC2 Console showing pending snapshot.

Les instantanés EBS initiaux prennent plus de temps à créer car ce sont des sauvegardes complètes, contrairement aux sauvegardes incrémentielles ultérieures. Si cela semble prendre plus de temps que prévu, déclenchez un rafraîchissement du statut en utilisant l’icône de rafraîchissement située dans le coin supérieur droit de votre écran.

Une fois que l’instantané est complet, vous verrez un État de terminé comme indiqué ci-dessous.

Snapshots section of the EC2 Console showing completed snapshot.

Vous avez maintenant créé une sauvegarde AWS EC2!

Création d’un instantané EBS en utilisant l’AWS CLI

Dans la dernière section, vous avez créé un instantané EBS en utilisant la console basée sur le web d’AWS, mais ce n’est pas le seul moyen de le faire ! Vous pouvez également sauvegarder une instance EC2 en créant un instantané via l’AWS CLI.

Pour créer votre instantané avec l’AWS CLI en supposant que vous avez l’AWS CLI installée et authentifiée sur votre compte :

  1. Ouvrez une invite de commande ou une console PowerShell sur votre ordinateur Windows

2. Exécutez la commande aws ec2 describe-volumes avec le paramètre --query pour afficher une liste d’instances et d’identifiants de volume. Notez l’identifiant du volume que vous souhaitez sauvegarder.

aws ec2 describe-volumes --query 'Volumes[*].Attachments[].{VolumeID:VolumeId,InstanceID:InstanceId}' --output text

3. Exécutez la commande aws ec2 create-snapshot en fournissant les paramètres suivants :

  • volume-id – l’identifiant unique du volume EBS que vous essayez de sauvegarder
  • description – la description que vous souhaitez appliquer à la sauvegarde
  • tag-specifications – les tags que vous souhaitez ajouter à la sauvegarde

La commande suivante crée un instantané du volume que vous spécifiez à droite avec le paramètre --volume-id avec la description de Instantané du volume pour le blog ATA via l’AWS CLI et deux étiquettes; Nom: FileServer01 et Objectif: Stockage de fichiers d’entreprise.

# Assurez-vous d'insérer votre ID de volume 
aws ec2 create-snapshot --volume-id <your volume ID> --description 'Volume Snapshot for ATA Blog via the AWS CLI' --tag-specifications 'ResourceType=snapshot,Tags=[{Key=Name,Value=FileServer01},{Key=Purpose,Value=Enterprise File Storage}]' 
AWS CLI output showing successful command output.

AWS vous permet de configurer le format de sortie par défaut des commandes AWS CLI, en fonction des préférences de l’utilisateur. Les sélections de format de sortie incluent JSON, YAML, YAML-Stream, Texte et Tableau. La sortie de votre commande dépend de la configuration de votre AWS CLI et peut être différente de la sortie affichée ci-dessus.

4. Vérifiez maintenant l’état de l’instantané avec la commande aws ec2 describe-snapshots en fournissant l’ID de l’instantané au paramètre --snapshot-id. Trouvez l’ID de l’instantané à partir de la propriété SnapshotID retournée à l’étape 2.

Si vous ne connaissez pas l’ID de l’instantané, recherchez tous vos instantanés en utilisant aws ec2 describe-snapshots --owner self.

# Assurez-vous d'insérer votre ID d'instantané
aws ec2 describe-snapshots --snapshot-id <your snapshot ID>

En fin de compte, la commande describe-snapshots devrait renvoyer un Progress de 100% et un State de completed comme indiqué ci-dessous.

AWS CLI output showing completed EBS Snapshot.

Excellent travail ! Vous venez de créer un instantané EBS de manière programmatique en utilisant l’AWS CLI !

Étapes suivantes

Dans ce tutoriel, vous avez appris comment créer des sauvegardes des instances Amazon EC2 avec des instantanés EBS en utilisant la console AWS basée sur le web et l’interface AWS CLI programmatique.

Si vous avez terminé les tests avec l’instantané que vous avez créé dans ce tutoriel, assurez-vous de le supprimer pour éviter des frais inutiles!

Pour aller plus loin, que diriez-vous d’essayer de restaurer une instance EC2?

Source:
https://adamtheautomator.com/aws-ec2-backup/