134 votes

AWS : différence entre un snapshot et une AMI

J'ai donc du mal à comprendre quelle est la différence entre les deux.

Si je comprends bien, un snapshot est simplement une sauvegarde du disque dur, alors que l'AMI est une sauvegarde de l'ensemble du système (ou de l'instance, devrais-je dire), mais l'ensemble du système n'est-il pas techniquement entièrement situé sur le disque dur ? et si c'est le cas, il n'y a pas de différence claire et j'ai raté quelque chose ?

81voto

Eric Hammond Points 10699

Il existe deux types d'AMI (et d'instances correspondantes) :

  1. magasin d'instance (parfois appelé S3). Ils sont moins courants et je ne les recommande pas aux débutants. Une AMI d'instance-store est une copie du volume d'instance-store racine plus quelques métadonnées, le tout enregistré dans un bucket S3 dans un format spécial

  2. Démarrage EBS. C'est probablement ce que vous utilisez. Une AMI de démarrage EBS est un instantané EBS du volume racine EBS ainsi que certaines métadonnées telles que l'architecture, le noyau, le nom de l'AMI, la description, les mappages de périphériques de blocs, etc.

Vous pouvez prendre un instantané d'un volume de démarrage EBS et le transformer en une AMI de démarrage EBS en l'enregistrant avec les métadonnées appropriées. La partie la plus délicate de cette opération consiste à spécifier l'identifiant AKI correct (noyau) afin que le démarrage soit correct.

31voto

BrianJakovich Points 1514

La principale différence réside dans le type de service auquel il est fait référence. Un instantané est d'un volume EBS où vous êtes en mesure de sauvegarder l'état et de redémarrer avec les mêmes données à un certain moment dans le temps.

Une AMI est similaire, mais elle concerne les instances EC2 elles-mêmes. Vous ne pouvez pas prendre un instantané d'une instance non sauvegardée par ebs, mais vous pouvez créer une AMI (image système) d'une instance.

En général, j'utilise des snapshots EBS comme solutions de sauvegarde pour un volume de base de données et j'utilise une AMI pour sauvegarder la configuration de l'instance.

29voto

skryvets Points 802

J'ai été confus par cela aussi. Voici la façon la plus simple de le comprendre :

  • EBS Snapshot représente très souvent une sauvegarde d'un volume EBS spécifique, mais il peut s'agir de n'importe quel volume (volume racine, volume de données, etc.).

  • AMI (Amazon Machine Image) est une sauvegarde de l'instance EC2 entière. Par exemple, avec une configuration appropriée, il est possible de créer une AMI qui inclut plusieurs volumes EBS.

Cela peut sembler déroutant, mais ils sont tous deux stockés en tant que "EBS Snapshots".

Pensez-y de cette façon :

  • EBS Snapshot est juste une sauvegarde de données.
  • AMI est une représentation de l'état du système à un moment précis. Vous pouvez également démarrer à partir de ce fichier.

18voto

msoliman Points 732

EBS Volume est le disque sous-jacent derrière EC2. Snapshot est une sauvegarde ponctuelle d'un volume tandis que l'AMI est une sauvegarde de l'instance EC2 entière qui peut avoir plusieurs volumes attachés, exactement comme les machines virtuelles.

Con Packer vous pouvez créer des images machine automatisées, notamment des AMI pour EC2, des fichiers VMDK/VMX pour VMware, des exportations OVF pour VirtualBox, etc.

EC2  <-- EBS Volume (Boot) + EBS Volume 
                        ^
                        |
                     Snapshot (only of specific volume)       
                        ^
                        |
                       AMI (Combined snapshots of all volumes, snapshot must have boot volume) 
                        ^
                        | 
                  Launch a new Instance (same installed softwares and configs, different specs) 

Instantanés peut être utilisé pour sauvegarder des lecteurs/volumes. Il s'agit d'une opération de sauvegarde incrémentale, ce qui signifie qu'à chaque fois que vous prenez un instantané d'un volume, il n'ajoutera que les nouveaux changements ajoutés/introduits au volume depuis votre dernière sauvegarde (pas la sauvegarde complète), ce qui permet d'économiser du temps de sauvegarde, de l'espace et finalement du coût.

Les instantanés peuvent être utilisés dans :

  • Sauvegarde régulière des disques

  • Changez le type de volume, par exemple vous avez du trafic ou des lectures et des écritures et vous avez besoin d'augmenter les opérations d'IO, vous passez donc de gp2 à io1 avec plus de IOPs

Les IAM personnalisés peuvent être utilisés dans :

  • Pour la reprise après sinistre au cas où l'instance EC2 en cours d'exécution serait corrompue et ne pourrait pas fonctionner sans raison.

  • AMIs standard de l'entreprise qui ont tous les logiciels prérequis installés qui simplifient le processus de déploiement (par exemple, configurés pour se connecter à `Splunk, ont certains logiciels de surveillance et d'observabilité installés, ont docker installé, ou sont configurés pour connecter Puppet ou Chef au démarrage).

  • Les AMI peuvent être utilisés pour déployer facilement vos applications dans différentes régions.

  • Mettre à niveau votre serveur vers des spécifications plus élevées ou différentes avec tous les logiciels installés et leurs configurations.

  • Les AMI peuvent être partagées publiquement entre les comptes AWS.

17voto

Anshu Prateek Points 492

Une AMI peut être créée en utilisant un snapshot. Par exemple, à l'aide d'un seul "snapshot", vous pouvez créer plusieurs AMI, par exemple une AMI PV et une AMI HVM en utilisant le même snapshot.

Donc, le snapshot a les données du système / OS. L'AMI est (snapshot + métadonnées machine/matériel).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X