Terminologie Amazon EC2 - AMI vs EBS vs Instantané vs Volume

127

J'ai fouillé Amazon EC2 et je suis un peu confus quant à la terminologie employée. Spécifiquement en ce qui concerne les IAM, les instantanés et les volumes, et un EBS

S'il vous plaît, corrigez-moi si je me trompe ou renseignez toute lacune grave dans les énoncés suivants:

  • Une AMI (Amazon Machine Image) est une capture complète sur disque d’un système d’exploitation et de sa configuration. Lorsque vous lancez une instance, vous la lancez depuis une AMI

  • Un EBS (Elastic Block Storage) est un moyen de conserver l'état de toutes les modifications que vous avez effectuées une fois que vous avez démarré à partir d'une AMI donnée. Dans mon esprit, cela ressemble à une différence entre l'état final de votre instance et celui de l'AMI.

  • Un instantané est ... eh bien, je ne suis pas sûr. Je peux seulement supposer qu'il s'agit d'un instantané d'une instance spécifique, mais je ne vois pas en quoi cela diffère de l'état stocké dans un EBS. En quoi un instantané est-il différent de la création d'une AMI EBS à partir d'une instance existante?

  • Un volume est ... il semblerait que l'espace disque monté dans lequel une paire AMI / EBS est chargé? Je ne suis pas sûr sur celui-ci non plus. Je vois (à partir de la console AWS) que vous pouvez créer un volume à partir d'un instantané et que vous pouvez attacher / détacher des volumes, mais je ne vois pas pourquoi ni quand vous le feriez.

Mat
la source

Réponses:

150

Comme vous le notez, une AMI est une image machine. C'est un instantané complet d'un système stocké en tant qu'image pouvant être lancée en tant qu'instance. Nous reviendrons sur les AMI dans une seconde.

Regardons EBS. Vos deux autres éléments sont des sous-éléments de ceci. EBS est un périphérique de bloc virtuel. Vous pouvez penser à cela comme à un disque dur, bien que la liaison à un autre type de périphérique de stockage offre une certaine magie logicielle, mais que cela ressemble à un disque dur pour une instance.

EBS n'est que le nom du service complet. À l'intérieur d'EBS, vous avez ce qu'on appelle des volumes. Ce sont "l'unité" amazone vous vend. Vous créez un volume et ils vous allouent un nombre X de gigaoctets et vous l'utilisez comme un disque dur que vous pouvez connecter à n'importe lequel de vos ordinateurs en cours d'exécution (instances). Les volumes peuvent être créés vides ou à partir d'une copie instantanée du volume précédent, ce qui nous amène au sujet suivant.

Les instantanés sont… bien… des instantanés de volumes: une capture exacte de ce à quoi un volume ressemblait à un moment donné, y compris toutes ses données. Vous pouvez avoir un volume, le joindre à votre instance, le remplir avec des éléments, puis le capturer, mais continuez à l'utiliser. Le contenu du volume continuerait à changer au fur et à mesure que vous l'utiliseriez comme système de fichiers, mais l'instantané serait figé dans le temps. Vous pouvez créer un nouveau volume en utilisant cette capture instantanée comme base. Le nouveau volume ressemblerait exactement à celui de votre premier disque lorsque vous avez pris l'instantané. Vous pouvez commencer à utiliser le nouveau volume à la place de l'ancien pour restaurer vos données, ou peut-être attacher le même jeu de données à un deuxième ordinateur. Vous pouvez continuer à prendre des instantanés de volumes à tout moment. C'est comme une sauvegarde d'instance freeze-image qui peut ensuite facilement être transformée en un nouveau disque actif (volume) chaque fois que vous en avez besoin.

Les volumes peuvent donc être basés sur un nouvel espace vide ou sur un instantané. C'est compris? Les volumes peuvent être attachés et dissociés de toutes les instances, mais uniquement connectés à une instance à la fois, tout comme le disque physique dont ils constituent une abstraction virtuelle.

Revenons maintenant aux AMI. Celles-ci sont délicates car il existe deux types. On crée une instance éphémère où le système de fichiers racine ressemble à un lecteur de l'ordinateur mais reste en mémoire quelque part et se vaporise à la minute où il cesse d'être utilisé. L'autre type s'appelle une instance basée sur EBS. Cela signifie que lorsque vos instances sont chargées, son système de fichiers racine est chargé sur un nouveau volume EBS, superposant la technologie de la machine virtuelle EC2 à celle de la technologie EBS. Un volume EBS normal est quelque chose qui se trouve à côté de EC2 et peut être attaché, mais une instance sécurisée par EBS EST également un volume lui-même.

Une AMI normale est simplement un gros bloc de données qui est chargé en tant que machine. Une AMI sauvegardée par EBS est chargée sur un volume EBS. Vous pouvez donc l'éteindre et le redémarrer à l'endroit où vous l'aviez laissée, exactement comme le ferait un vrai disque.

Maintenant, mettez tout cela ensemble. Si une instance est sauvegardée par EBS, vous pouvez également la capturer. Fondamentalement, cela correspond exactement à ce qu'un instantané ordinaire… un arrêt sur image du disque racine de votre ordinateur à un moment donné. En pratique, il fait deux choses différentes. La première est qu’elle ferme votre instance afin que vous obteniez une copie du disque, car elle ressemblerait à un ordinateur éteint et non à un ordinateur allumé. Cela facilite le démarrage :) Ainsi, lorsque vous enregistrez une instance, elle la ferme, prend l’image disque, puis redémarre. Deuxièmement, il enregistre les images en tant qu'AMI au lieu d'un instantané de disque normal. Fondamentalement, il s'agit d'un instantané démarrable d'un volume.

Caleb
la source
1
Merci pour la bonne information, je pense que cela vient pour moi. Question complémentaire: quelle est la différence entre créer un instantané d’une AMI EBS par rapport à un clic droit et à la sélection de «Créer une image (AMI EBS)» à partir de la console Web EC2? D'après votre description ci-dessus, il semblerait qu'elles soient identiques, à l'exception de la manière dont vous les utilisez. Vous pouvez créer un volume à partir d’un instantané, puis l’attacher à une AMI. Où, en tant qu'image EBS AMI, simplement ... je ne sais pas, supprime l'étape consistant à la joindre à un volume?
Matt
En fait, je pense que l'outil de la console pour la capture instantanée d'une AMI fait la même chose que la console Web. Où votre description des erreurs est le bit sur les pièces jointes. Si vous effectuez un instantané d'une instance, un instantané est créé à partir du volume racine, mais plus que cet instantané devient une AMI. Un instantané régulier que vous créez dans un volume et que vous attachez à une instance. Un instantané d'une instance que vous créez en une instance (vous ne joignez pas le volume à une instance, il s'agit de l'instance). Cela a-t-il du sens?
Caleb
Chaque fois que je disais console, je voulais dire console Web. Je n'ai pas encore joué avec des API en ligne de commande. Je suppose que ce que je ne comprends pas, c'est que vous créez une AMI EBS à partir d'une instance et un instantané à partir d'un volume, mais il semble que le volume soit l'AMI EBS. Ensuite, pour créer une nouvelle instance, vous pouvez soit 1) en lancer une à partir d’une AMI créée, soit 2) copier l’instantané sur un volume et lancer une AMI attachée à ce volume, mais le résultat obtenu est identique. Est-ce exact?
Matt
Vous étiez ok jusqu'à la partie "il semble que", alors il cesse de correspondre à la réalité. En particulier, la dernière partie (votre 2) est un non-sens. Vous n'attachez pas les AMI aux volumes. Les AMI soutenues par EBS sont des volumes spécialement marqués qui sont amorçables. Les volumes sont attachés aux instances, et non l'inverse.
Caleb
2
Lorsque vous effectuez une capture instantanée, utilisez autre chose que le disque racine. J'ai beaucoup de disques qui stockent des ensembles de données qui ne font pas partie d'un ordinateur donné. Si vous prenez un cliché du disque système / lecteur racine, utilisez les outils de création EBS AMI. Mais parfois, vous avez d'autres volumes avec d'autres ensembles de données qui peuvent même ou non être attachés à un système donné. Ceux que vous pouvez prendre en photo à votre rythme. Un instantané automatique sera créé s’ils sont attachés à une instance, mais vous pouvez également créer votre propre image, par exemple… dupliquer un disque et l’attacher à une autre instance.
Caleb
9

Je pense que nous allons simplifier les choses. Créez un modèle AMI à partir d'une instance existante (par exemple, instance n ° 1. Notez que lorsque vous créez un modèle AMI, vous disposez également d'un instantané de volume. Consultez la section correspondante. Lorsque vous souhaitez créer une nouvelle instance, choisissez le nouvel Modèle AMI, il prendra ensuite l’instantané au moment de la création du modèle AMI.

Maintenant, si vous avez créé des instantanés à partir du volume de l'instance n ° 1, c'est bon. Créez une nouvelle instance à partir du modèle AMI, puis détachez le volume qui a été créé automatiquement pour elle, puis attachez le volume créé à partir d'instantanés à partir du volume de l'instance n ° 1.

Goldwynn T
la source
2

Pour résumer les choses:

  • EBS = le service AWS lui-même

  • EBS Volume = Pensez-y comme à un disque dur que vous pouvez attacher à une instance EC2

  • Instantané = une copie de votre volume au moment opportun

  • AMI = une copie d'une instance complète

TH22
la source
0

En plus des explications ci-dessus, voici un exemple pour éclaircir tout cela.

Supposons que votre "instance EC2 I1" soit associée à deux volumes EBS: EBS Volume V1a et EBS Volume V1b.

Maintenant, si vous créez une image AMI à partir de l'instance EC2 I1, vous obtiendrez -

une. Une image AMI de l'instance EC2 I1, appelons-la AMI1

b. Un instantané de EBS Volume V1a, appelons-le S1

c. Un instantané de EBS Volume V1b, appelons-le S2

Ensuite, si vous lancez une nouvelle instance à partir de l'image AMI1, vous obtiendrez -

une. Une nouvelle instance EC2, appelons-la I2

b. Un nouveau volume EBS généré à partir de Snapshot S1, appelons-le V2a

c. Un nouveau volume EBS généré à partir de Snapshot S2, appelons-le V2b

Résumer -

  1. Une image AMI crée des instantanés du ou des volumes attachés à l'instance d'origine (à partir desquels l'AMI est créée).

  2. Une nouvelle instance lancée à partir d'une image AMI crée un ou plusieurs volumes à partir des instantanés attachés à cette AMI.

Je l'ai expliqué en détail dans http://zilhaz.com/ebs-ami-aws-ec2/

zilhaz
la source