Frage Erstellen eines EC2-AMI-Images aus einer laufenden Instanz oder aus einem Volume-Snapshot


Ich möchte eine Linux-basierte EC2-Instanz sichern, während sie ohne Ausfallzeiten ausgeführt wird, und später eine neue Instanz starten. (Die Instanz führt einen Webserver und eine Postgres-Datenbank aus.)

Ich fand, dass es zwei Möglichkeiten gibt, dies zu tun, aber ich bin verwirrt darüber, was der Unterschied zwischen ihnen ist.

Option # 1: Erstellen Sie ein AMI direkt aus einer laufenden Instanz:

  1. Erstellen Sie ein neues AMI direkt aus der laufenden Originalinstanz.
  2. Starten Sie eine neue Instanz von der AMI

Option 2: Erstellen Sie manuell ein AMI aus einem Snapshot:

  1. Erstellen Sie einen Snapshot von dem Volume, das der laufenden Originalinstanz angehängt ist
  2. Erstellen Sie AMI aus dem Snapshot und geben Sie Details wie Architektur und Kernel-ID manuell ein
  3. Starten Sie eine neue Instanz aus dem manuell erstellten Bild

Was verwirrend ist, ist, dass EC2 beim erstmaligen Erstellen eines AMI direkt von einer Instanz aus die Instanz standardmäßig neu startet. Es gibt ein Kontrollkästchen "Kein Neustart" mit folgendem Tooltip:

Wenn diese Option aktiviert ist, wird die Instanz von Amazon EC2 nicht zuvor heruntergefahren   Erstellen des Bildes. Wenn diese Option verwendet wird, Dateisystemintegrität auf   Das erstellte Bild kann nicht garantiert werden.

Gibt es wirklich einen Unterschied im Ergebnis dieser beiden Möglichkeiten? Für mich fühlt es sich an, als würde ich manuell die gleichen Dinge tun, die der automatisierte Assistent ohnehin tun würde. Es erzeugt Snapshots, wählt die Kernel-IDs und -Architekturen aus.

Warum hat man einen Warnungstext und der andere nicht? Snapshots einer laufenden Instanz gelten als relativ sicher, und wenn die AMI-Erstellung einen Snapshot im Hintergrund erstellt, ist es gefährlicher als alles manuell zu tun?


20
2018-02-26 09:25


Ursprung




Antworten:


Sie tun genau dasselbe, wenn Sie das auswählen no reboot Option, wenn das AMI direkt von EC2 erstellt wird. Dies erstellt im Grunde eine Momentaufnahme, die möglicherweise in einem inkonsistenten Zustand sein kann. Beispielsweise riskieren Sie, dass mehr inkonsistente Zustände vorliegen, wenn Sie beim Erstellen des Snapshots viele Schreibvorgänge ausführen.

Wenn Sie einen Snapshot in einem "konsistenten" Zustand erstellen möchten, müssen Sie zuerst die Instanz herunterfahren und dann einen Snapshot erstellen und dann Ihre Instanz neu starten. Aus diesem Grund ist die AMI-Erstellungsoption von EC2 sehr nützlich, da Sie nicht anhalten und neu starten müssen. Amazon kümmert sich darum und auch die IP-Adresse ändert sich in Ihrer Instanz nicht. (Wenn Sie Ihre Instanz stoppen / neu starten, ändert sich Ihre IP-Adresse)

Ich bin nicht wirklich sicher, warum Amazon keine Warnung hat, wenn Sie einen Schnappschuss direkt vom Datenträger machen, aber vom Gesichtspunkt des Datenträgers ist es wirklich egal, ob der Datenträger von einer laufenden oder nicht laufenden Instanz verwendet wird ( Es ist nur wichtig, ob es beim Erstellen von Snapshots attach oder detatch ist.


12
2018-02-27 03:54