Blockgerät-Zuweisungen auf Amazon-EC2-Instances blockieren
Jede gestartete Instance hat einen zugehörigen Root-Gerät-Volume, entweder ein Amazon EBS-Volume oder ein Instance-Speicher-Volume. Sie können mit der Blockgerät-Zuweisung zusätzliche EBS-Volumes oder Instance-Speicher-Volumes an eine Instance anfügen, wenn diese gestartet wird. Sie können ebenfalls zusätzliche EBS-Volumes an eine ausgeführte Instance anfügen. Die einzige Möglichkeit zum Anfügen von Instance-Speicher-Volumes an eine Instance ist die Blockgerät-Zuweisung, um die Volumes beim Start der Instance anzufügen.
Inhalt
Konzepte der Blockgerät-Zuweisung
Ein Blockgerät ist ein Speichergerät, das Daten in Byte- bzw. Bit-Blöcken verschiebt. Diese Geräte unterstützen zufälligen Zugriff und verwenden im Allgemeinen I/O-Puffer. Beispiele sind Festplatten, CD-ROM-Laufwerke und Flashlaufwerke. Ein Blockgerät kann physisch mit einem Computer verbunden oder per Remotezugriff verwendet werden, so als ob es physikalisch mit dem Computer verbunden wäre.
Amazon EC2 unterstützt zwei Arten von Blockgeräten:
-
Instance-Speicher-Volumes (virtuelle Geräte, deren physikalische Hardware mit dem Host-Computer für die Instance verbunden ist)
-
EBS-Volumes (Remotespeichergeräte)
Eine Blockgerät-Zuweisung definiert die Blockgeräte (Instance-Speicher-Volumes und EBS-Volumes) zum Anfügen an eine Instance. Sie können eine Blockgerät-Zuweisung als Teil der Erstellung eines AMI angeben, sodass die Zuweisung von allen Instances verwendet wird, die vom AMI gestartet werden. Alternativ können Sie eine Blockgerät-Zuweisung zum Starten einer Instance angeben. Diese Zuweisung gilt dann statt der im AMI angegebenen, von der aus die Instance gestartet wurde. Beachten Sie, dass alle von einem Instance-Typ unterstützen NVMe-Instance-Speicher-Volumes automatisch aufgezählt und beim Starten der Instance einem Gerätenamen zugeordnet werden. Die Aufnahme in Ihre Blockgerät-Zuweisung hat keine Auswirkung.
Inhalt
Blockgerät-Zuweisungseinträge
Wenn Sie eine Blockgerät-Zuweisung erstellen, geben Sie die folgenden Informationen für jedes Blockgerät an, das der Instance angefügt werden soll:
-
Der in Amazon EC2 verwendete Gerätename. Der Blockgerätetreiber für die Instance weist den tatsächlichen Volume-Namen beim Einbinden des Volumes zu. Der zugewiesene Name kann vom Namen abweichen, der von Amazon EC2 empfohlen wird. Weitere Informationen finden Sie unter Gerätenamen für Volumes auf Amazon-EC2-Instances.
Für Instance-Speichervolumes können Sie auch die folgenden Informationen angeben:
-
Das virtuelle Gerät:
ephemeral[0-23]
. Die Anzahl und Größe der verfügbaren Instance-Speicher-Volumes für die Instance hängt vom Instance-Typ ab.
Für NVMe-Instance-Speichervolumes gelten auch die folgenden Informationen:
-
Diese Volumes werden automatisch aufgezählt und beim Starten der Instance einem Gerätenamen zugeordnet. Die Aufnahme in Ihre Blockgerät-Zuweisung hat keine Auswirkung.
Für EBS-Volumes geben Sie auch die folgenden Informationen an:
-
Die ID des zu verwendenden Snapshots zur Erstellung des Blockgeräts (snap-xxxxxxxx). Der Wert ist optional, sofern eine Volumengröße angegeben wird. Sie können die ID eines archivierten Snapshots nicht angeben.
-
Die Größe des Volumes in GiB Die angegebene Größe muss größer oder genauso groß wie der angegebene Snapshot sein.
-
Ob das Volume bei Beendigung der Instance gelöscht wird (
true
oderfalse
). Der Standardwert isttrue
für den Root-Gerät-Volume undfalse
für angefügte Volumes. Wenn Sie ein AMI erstellen, erbt die Blockgerät-Zuweisung die Einstellung von der Instance. Wenn Sie eine Instance starten, erbt sie die Einstellung vom AMI. -
Der Volume-Typ. Dieser kann bei Allzweck-SSD
gp2
undgp3
, bei SSD mit bereitgestellten IOPSio1
undio2
, bei durchsatzoptimierten HDDst1
, bei Cold-HDDsc1
und bei Magnetfestplattenstandard
sein. -
Die Anzahl der Ein/Ausgangs-Vorgänge pro Sekunde (IOPS), die das Volume unterstützt. (Wird nur mit
io1
- undio2
-Volumes verwendet.)
Blockgerät-Zuweisung – Instance-Speicher-Einschränkungen
Beim Starten von Instances mit AMIs mit Instance-Speicher-Volumes in ihren Blockgerät-Zuweisungen müssen einige Einschränkungen beachtet werden.
-
Einige Instance-Typen enthalten mehr Instance-Speicher-Volumes als andere und bestimmte Instance-Typen enthalten überhaupt keine Instance-Speicher-Volumes. Wenn der Instance-Typ ein Instance-Speicher-Volume unterstützt und das AMI Zuweisungen für zwei Instance-Speicher-Volumes aufweist, wird die Instance mit einem Instance-Speicher-Volume gestartet.
-
Instance-Speicher-Volumes können ausschließlich zum Startzeitpunkt zugewiesen werden. Sie können Instances nicht ohne Instance-Speicher-Volumes anhalten (z. B.
t2.micro
), die Instance zu einem Typ ändern, der Instance-Speicher-Volumes unterstützt, und anschließend die Instance mit Instance-Speicher-Volumes neustarten. Allerdings können Sie ein AMI aus der Instance erstellen, dieses mit einem Instance-Typ starten, der Instance-Speicher-Volumes unterstützt, und anschließend die Instance-Speicher-Volumes der Instance zuweisen. -
Wenn Sie eine Instance mit zugewiesenen Instance-Speicher-Volumes starten, anschließend die Instance anhalten und zu einem Instance-Typ mit weniger Instance-Speicher-Volumes ändern und neustarten, werden die Instance-Speicher-Volume-Zuweisungen in den Instance-Metadaten angezeigt. Allerdings ist nur die Höchstanzahl der unterstützten Instance-Speicher-Volumes für den Instance-Typ für die Instance verfügbar.
Anmerkung
Wenn eine Instance angehalten wird, gehen alle Daten auf den Instance-Speicher-Volumes verloren.
-
Je nach Instance-Speicher-Kapazität zum Startzeitpunkt können M3-Instances AMI-Instance-Speicher-Blockgerät-Zuweisungen beim Start ignorieren, sofern sie nicht beim Start angegeben werden. Geben Sie Instance-Speicher-Blockgerät-Zuweisungen zum Startzeitpunkt an, selbst wenn beim gestarteten AMI die Instance-Speicher-Volumes im AMI zugewiesen sind, um sicherzustellen, dass die Instance-Speicher-Volumes beim Starten der Instance verfügbar sind.
Beispiel einer Blockgerät-Zuweisung
Diese Abbildung zeigt ein Beispiel für eine Blockgerät-Zuweisung für eine EBS-Backed-Instance. Sie weist /dev/sdb
zu ephemeral0
und zwei EBS-Volumes zu: eines zu /dev/sdh
und ein weiteres zu /dev/sdj
. Es zeigt außerdem das EBS-Volume, das der Root-Gerät-Volume ist, /dev/sda1
.
Hinweis: Dieses Beispiel für Blockgerät-Zuweisung wird in den Beispielbefehlen und APIs in diesem Thema verwendet. Beispielbefehle und APIs zur Erstellung von Blockgerät-Zuweisungen finden Sie in Angeben einer Blockgerät-Zuweisung für ein AMI und Aktualisieren der Blockgerät-Zuweisung beim Starten einer Instance.
Bereitstellung von Geräten im Betriebssystem
Gerätenamen wie /dev/sdh
und xvdh
werden von Amazon EC2 zum Beschreiben von Blockgeräten verwendet. Die Blockgerät-Zuweisung dient in Amazon EC2 zum Angeben der Blockgeräte zum Hinzufügen zu einer EC2 Instance. Nach dem Anfügen eines Blockgeräts zu einer Instance muss es vom Betriebssystem aufgespielt werden, bevor Sie auf das Speichergerät zugreifen können. Wenn ein Blockgerät von einer Instance getrennt wird, wird die Bereitstellung vom Betriebssystem aufgehoben und Sie können nicht mehr auf das Speichergerät zugreifen.
Linux-Instances – Die in der Blockgerät-Zuweisung angegebenen Namen werden den entsprechenden Blockgeräten beim ersten Hochfahren der Instance zugewiesen. Die Instance-Typen bestimmen, welche Instance-Speicher-Volumes standardmäßig formatiert und aufgespielt werden. Sie können zusätzliche Instance-Speicher-Volumes zum Startzeitpunkt aufspielen, sofern die Anzahl der für den Instance-Typ verfügbaren Instance-Speicher-Volumes nicht überschritten wird. Weitere Informationen finden Sie unter Instance-Speicher temporärer Speicher auf Blockebene für EC2-Instances. Der Blockgerät-Treiber für die Instance bestimmt, welche Geräte beim Formatieren und Aufspielen der Volumes verwendet werden.
Windows-Instances – Die in der Blockgerät-Zuweisung angegebenen Namen werden den entsprechenden Blockgeräten beim ersten Hochfahren der Instance zugewiesen. Anschließend startet der Ec2Config-Service die Laufwerke und spielt sie auf. Der Root-Gerät-Volume wird als C:\
aufgespielt. Die Instance-Speicher-Volumes werden als Z:\
, Y:\
aufgespielt usw. Zum Aufspielen eines EBS-Volume kann ein beliebiger verfügbarer Laufwerkbuchstabe verwendet werden. Sie können die Art der Zuweisung von Laufwerkbuchstaben zu EBS-Volumes jedoch konfigurieren. Weitere Informationen finden Sie unter Windows-Start-Agenten auf Amazon-EC2-Windows-Instances.