Wie Sie bemerken, ist ein AMI ein Maschinenbild. Es ist eine vollständige Momentaufnahme eines Systems, das als Image gespeichert ist und als Instanz gestartet werden kann. Wir werden in einer Sekunde auf AMIs zurückkommen.
Schauen wir uns EBS an. Ihre beiden anderen Gegenstände sind Untergegenstände davon. EBS ist ein virtuelles Blockgerät. Sie können es sich wie eine Festplatte vorstellen, obwohl es wirklich ein Haufen von Software-Magie ist, sich mit einer anderen Art von Speichergerät zu verbinden, aber es so aussehen zu lassen, als wäre es eine Festplatte für eine Instanz.
EBS ist nur der Name für den gesamten Service. Innerhalb von EBS haben Sie sogenannte Volumes. Dies sind die "Einheiten", die Amazon Ihnen verkauft. Sie erstellen ein Volume, das Ihnen X Gigabyte zuweist, und Sie verwenden es wie eine Festplatte, die Sie an jeden Ihrer laufenden Computer (Instanzen) anschließen können. Volumes können entweder leer oder aus einer Snapshot-Kopie des vorherigen Volumes erstellt werden, wodurch wir zum nächsten Thema gelangen.
Schnappschüsse sind ... nun ... Schnappschüsse von Volumes: eine genaue Erfassung, wie ein Volume zu einem bestimmten Zeitpunkt aussah, einschließlich aller seiner Daten. Sie könnten ein Volume haben, es an Ihre Instanz anhängen, es mit Dingen füllen und dann einen Snapshot erstellen, aber es weiterhin verwenden. Der Inhalt des Volumes würde sich ständig ändern, während Sie es als Dateisystem verwendeten, aber der Schnappschuss würde in der Zeit eingefroren. Sie können ein neues Volume erstellen, indem Sie diesen Snapshot als Basis verwenden. Das neue Volume würde genau so aussehen wie Ihre erste Festplatte, als Sie den Snapshot aufgenommen haben. Sie können das neue Volume anstelle des alten verwenden, um ein Rollback Ihrer Daten durchzuführen, oder den gleichen Datensatz an einen zweiten Computer anhängen. Sie können jederzeit Momentaufnahmen von Volumes machen. Es ist wie ein Freeze-Frame-Instance-Backup, das jederzeit auf einfache Weise in ein neues Live-Laufwerk (Volume) umgewandelt werden kann.
Volumes können also auf einer neuen Leerstelle oder einem Snapshot basieren. Verstanden? Volumes können an beliebige Instanzen angehängt und von diesen getrennt werden, jedoch jeweils nur mit einer Instanz verbunden, genau wie die physische Festplatte, von der sie eine virtuelle Abstraktion sind.
Nun zurück zu AMIs. Diese sind schwierig, weil es zwei Arten gibt. Man schafft eine kurzlebige Situation, in der das Root-Dateisystem wie ein Laufwerk für den Computer aussieht, sich aber tatsächlich irgendwo im Speicher befindet und die Minute verdampft, in der es nicht mehr verwendet wird. Die andere Art wird als EBS-gestützte Instanz bezeichnet. Dies bedeutet, dass beim Laden Ihrer Instanzen das Root-Dateisystem auf ein neues EBS-Volume geladen wird, wobei die EC2-Technologie der virtuellen Maschine auf die EBS-Technologie aufgeschichtet wird. Ein reguläres EBS-Volume befindet sich neben EC2 und kann angehängt werden. Eine von EBS unterstützte Instanz ist jedoch auch ein Volume.
Ein regulärer AMI ist nur ein großer Datenblock, der als Maschine geladen wird. Ein von EBS unterstütztes AMI wird auf ein EBS-Volume geladen, sodass Sie es herunterfahren können, und es wird an der Stelle wiederhergestellt, an der Sie aufgehört haben, wie es bei einer echten Festplatte der Fall wäre.
Nun füge alles zusammen. Wenn eine Instanz von EBS unterstützt wird, können Sie auch einen Snapshot erstellen. Im Grunde ist dies genau das, was ein normaler Schnappschuss tun würde ... ein Standbild der Root-Festplatte Ihres Computers zu einem bestimmten Zeitpunkt. In der Praxis macht es zwei Dinge anders. Zum einen wird Ihre Instanz heruntergefahren, sodass Sie eine Kopie der Festplatte erhalten, die für einen AUS-Computer und nicht für einen EIN-Computer aussieht. Dies erleichtert das Booten :) Wenn Sie also einen Snapshot einer Instanz erstellen, wird diese heruntergefahren, das Festplattenbild aufgenommen und dann erneut gestartet. Zweitens werden diese Bilder als AMI statt als regulärer Festplattenschnappschuss gespeichert. Grundsätzlich ist es ein bootfähiger Schnappschuss eines Volumes.
Ich denke, machen wir es einfach. Erstellen Sie eine AMI-Vorlage aus einer vorhandenen Instanz (z. B. Instanz Nr. 1). Beachten Sie, dass Sie beim Erstellen einer AMI-Vorlage auch einen Volume-Snapshot in Ihrem Snapshot-Bereich haben. Wenn Sie eine neue Instanz erstellen möchten, wählen Sie die neu erstellte Instanz aus Das AMI-Template wählt dann den Schnappschuss zum Zeitpunkt der Erstellung des AMI-Templates aus.
Wenn Sie Snapshots vom Volume von Instanz 1 erstellt haben, ist dies in Ordnung. Erstellen Sie eine neue Instanz aus der AMI-Vorlage. Trennen Sie dann das Volume, das automatisch für diese Instanz erstellt wurde, und hängen Sie das aus Snapshots erstellte Volume an das Volume von Instanz 1 an.
quelle
Um die Dinge zusammenzufassen:
EBS = der AWS-Service selbst
EBS Volume = Stellen Sie es sich wie eine Festplatte vor, die Sie an eine EC2-Instanz anschließen können
Schnappschuss = eine Kopie Ihres Volumes zu einem bestimmten Zeitpunkt
AMI = eine Kopie einer vollständigen Instanz
quelle
Zusätzlich zu den obigen Erläuterungen ist hier ein Beispiel, um all diese zu verdeutlichen.
Angenommen, an Ihre "EC2-Instanz I1" sind zwei EBS-Volumes angeschlossen - EBS-Volume V1a und EBS-Volume V1b.
Wenn Sie nun ein AMI-Image aus der EC2-Instanz I1 erstellen, erhalten Sie:
ein. Ein AMI-Image der EC2-Instanz I1, nennen wir es AMI1
b. Ein Schnappschuss von EBS Volume V1a, nennen wir es S1
c. Ein Schnappschuss von EBS Volume V1b, nennen wir es S2
Wenn Sie dann eine neue Instanz vom AMI1-Image starten, erhalten Sie:
ein. Eine neue EC2-Instanz nennen wir sie I2
b. Ein neues EBS-Volume, das aus Snapshot S1 generiert wurde, nennen wir es V2a
c. Ein neues EBS-Volume, das aus Snapshot S2 generiert wurde, nennen wir es V2b
Etwas zusammenfassen -
Ein AMI-Image erstellt Snapshots der Volumes, die an die ursprüngliche Instanz angehängt sind (aus der das AMI erstellt wurde).
Eine neue Instanz, die von einem AMI-Image gestartet wird, erstellt Volumes aus den an dieses AMI angehängten Snapshots.
Ich erklärte es ausführlich in http://zilhaz.com/ebs-ami-aws-ec2/
quelle