Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Ordnen Sie Amazon EBS-Volumes NVMe-Gerätenamen zu
EBS verwendet I/O Single-Root-Virtualisierung (SR-IOV), um Volume-Anhänge auf Nitro-based Instances bereitzustellen, die die NVMe-Spezifikation verwenden. Diese Geräte benötigen Standard-NVMe-Treiber auf dem Betriebssystem. Diese Treiber erkennen die angefügten Geräte in der Regel beim Instance-Start und erstellen Geräteknoten basierend auf der Reihenfolge, in der die Geräte reagieren, und nicht darauf, wie die Geräte in der Blockgerät-Zuweisung angegeben sind.
<y>Unter Linux folgen die NVMe-Gerätenamen dem Muster/dev/nvme<x>n<y>, wobei die <x>Reihenfolge der Aufzählung und für EBS der Wert 1 ist. Gelegentlich können Geräte bei nachfolgenden Instance-Starts auf die Erkennung in einer anderen Reihenfolge reagieren, was dazu führt, dass sich der Gerätename ändert. Darüber hinaus kann der Gerätename, der vom Blockgerät-Treiber zugewiesen wird, von dem in der Blockgerät-Zuweisung angegebenen Namen abweichen.
Wir empfehlen Ihnen, für Ihre EBS-Volumes innerhalb Ihrer Instance stabile IDs zu verwenden, wie beispielsweise eine der folgenden:
-
Bei Nitro-based Instances werden die Blockgerätezuordnungen, die in der Amazon EC2 EC2-Konsole beim Anhängen eines EBS-Volumes
AttachVolumeoder beiRunInstancesAPI-Aufrufen angegeben werden, im herstellerspezifischen Datenfeld der NVMe-Controller-Identifikation erfasst. Mit Amazon Linux-AMIs ab der Version 2017.09.01 stellen wir eineudev-Regel zur Verfügung, die diese Daten liest und einen symbolischen Link zur Blockgerät-Zuweisung erstellt. -
Die EBS-Volume-ID und der Einhängepunkt sind zwischen Instance-Statusänderungen stabil. Der NVMe-Gerätename kann sich je nach Reihenfolge ändern, in der die Geräte während des Instance-Starts reagieren. Wir empfehlen die Verwendung der EBS-Volume-ID und des Einhängepunkts zur konsistenten Geräteerkennung.
-
Bei NVMe EBS-Volumes ist die EBS-Volume-ID als Seriennummer in der Gerätekennung festgelegt. Verwenden Sie den Befehl
lsblk -o +SERIAL, um die Seriennummer aufzulisten. -
Das Format des NVMe-Gerätenamens kann je nachdem, ob das EBS-Volume während oder nach dem Start der Instance angeschlossen wurde, variieren. NVMe-Gerätenamen für Volumes, die nach dem Instance-Start verbunden sind, umfassen das
/dev/-Präfix, während NVMe-Gerätenamen für Volumes, die während des Instance-Starts verbunden sind, das/dev/Präfix nicht einschließen.-
Verwenden Sie für Amazon Linux oder FreeBSD AMI den
sudo ebsnvme-id /dev/Befehl für einen konsistenten NVMe-Gerätenamen.nvme0n1-u -
Verwenden Sie für andere Verteilungen den Befehl
sudo nvme id-ctrl -V /dev/, um den NVMe-Gerätenamen zu ermitteln. Möglicherweise müssen Sie die Befehlsoption angeben.nvme0n1--vendor-specific
-
-
Beim Formatieren eines Geräts wird eine UUID erzeugt, die für die gesamte Lebensdauer des Dateisystems erhalten bleibt. Gleichzeitig kann eine Gerätebezeichnung angegeben werden. Weitere Informationen finden Sie unter Machen Sie ein Amazon EBS-Volume zur Nutzung verfügbar Aus dem falschen Volume booten.
Amazon Linux-AMIs
Mit Amazon Linux-AMI 2017.09.01 oder höher (inklusive Amazon Linux 2) können Sie den Befehl ebsnvme-id wie folgt ausführen, um den NVMe-Gerätenamen einer Volume-ID zuzuordnen und umgekehrt:
Das folgende Beispiel zeigt den Befehl und die Ausgabe für ein Volume, das beim Instance-Start verbunden ist. Beachten Sie, dass der Name des NVMe-Gerätenamens nicht das /dev/-Präfix einschließt.
[ec2-user ~]$sudo /sbin/ebsnvme-id /dev/nvme0n1Volume ID: vol-01324f611e2463981 sda
Das folgende Beispiel zeigt den Befehl und die Ausgabe eines Volumes, der nach dem Instance-Start verbunden ist. Beachten Sie, dass der NVMe-Gerätename das /dev/-Präfix einschließt.
[ec2-user ~]$sudo /sbin/ebsnvme-id /dev/nvme1n1Volume ID: vol-064784f1011136656 /dev/sdf
Amazon Linux erstellt auch eine symbolische Verknüpfung vom Gerätenamen in der Blockgerätezuordnung (zum Beispiel /dev/sdf) zum NVMe-Gerätenamen.
FreeBSD-AMIs
Ab FreeBSD 12.2-RELEASE können Sie den Befehl ebsnvme-id wie oben gezeigt ausführen. Übergeben Sie entweder den Namen des NVMe-Geräts (z. B. nvme0) oder des Festplattengeräts (z. B. nvd0 oder nda0). FreeBSD erstellt auch symbolische Links zu den Festplattengeräten (zum Beispiel /dev/aws/disk/ebs/volume_id).
Andere Linux-AMIs
Mit einer Kernel-Version von 4.2 oder höher können Sie den Befehl nvme
id-ctrl wie folgt ausführen, um ein NVMe-Gerät einer Volume-ID zuzuordnen. Installieren Sie zunächst das NVMe-Befehlszeilenpaket, nvme-cli, unter Verwendung der Paketverwaltungstools für Ihre Linux-Distribution. Hinweise zum Download und zur Installation anderer Verteilungen finden Sie in der für Ihre Verteilung spezifischen Dokumentation.
Im folgenden Beispiel werden Volume-ID und NVMe-Gerätename für ein Volume abgerufen, das beim Instance-Start angehängt wurde. Beachten Sie, dass der Name des NVMe-Gerätenamens nicht das /dev/-Präfix einschließt. Der Gerätename ist über die für den Anbieter des NVMe-Controllers spezifische Extension (Bytes 384:4095 der Controller-ID) verfügbar:
[ec2-user ~]$sudo nvme id-ctrl -V /dev/nvme0n1NVME Identify Controller: vid : 0x1d0f ssvid : 0x1d0f sn :vol01234567890abcdefmn : Amazon Elastic Block Store ... 0000: 2f 64 65 76 2f 73 64 6a 20 20 20 20 20 20 20 20 "sda..."
Im folgenden Beispiel werden Volume-ID und NVMe-Gerätename für ein Volume abgerufen, das nach dem Instance-Start angeschlossen wurde. Beachten Sie, dass der NVMe-Gerätename das /dev/-Präfix einschließt.
[ec2-user ~]$sudo nvme id-ctrl -V /dev/nvme1n1NVME Identify Controller: vid : 0x1d0f ssvid : 0x1d0f sn :volabcdef01234567890mn : Amazon Elastic Block Store ... 0000: 2f 64 65 76 2f 73 64 6a 20 20 20 20 20 20 20 20 "/dev/sdf..."
Der Befehl lsblk führt die verfügbaren Geräte und, falls vorhanden, ihre Mountingpunkte auf. Damit können Sie bestimmen, welchen Gerätenamen Sie verwenden müssen. In diesem Beispiel ist /dev/nvme0n1p1 als Root-Gerät gemountet, und /dev/nvme1n1 ist angefügt, aber nicht gemountet.
[ec2-user ~]$lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme1n1 259:3 0 100G 0 disk nvme0n1 259:0 0 8G 0 disk nvme0n1p1 259:1 0 8G 0 part / nvme0n1p128 259:2 0 1M 0 part
Sie können den Befehl ebsnvme-id ausführen, um die NVMe-Geräte-Datenträgernummer einer EBS-Volume-ID und einem Gerätenamen zuzuordnen. Alle EBS-NVMe-Geräte sind standardmäßig aufgezählt. Sie können eine Datenträgernummer zum Aufzählen von Informationen zu einem bestimmten Gerät übergeben. Das ebsnvme-id Tool ist in den neuesten AWS bereitgestellten Windows Server-AMIs enthalten, die sich unter befinden. C:\ProgramData\Amazon\Tools
Beginnend mit dem AWS NVMe-Treiberpaket wird 1.5.0, die neueste Version des ebsnvme-id Tools durch das Treiberpaket installiert. Die neueste Version ist nur im Treiberpaket verfügbar. Der eigenständige Download-Link für das ebsnvme-id-Tool erhält keine Updates mehr. Die letzte über den eigenständigen Link verfügbare Version ist 1.1.0, die Sie über den Link ebsnvme-id.zipebsnvme-id.exe zu erhalten.
PSC:\ProgramData\Amazon\Tools> ebsnvme-id.exeDisk Number: 0 Volume ID: vol-0d6d7ee9f6e471a7f Device Name: sda1 Disk Number: 1 Volume ID: vol-03a26248ff39b57cf Device Name: xvdd Disk Number: 2 Volume ID: vol-038bd1c629aa125e6 Device Name: xvde Disk Number: 3 Volume ID: vol-034f9d29ec0b64c89 Device Name: xvdb Disk Number: 4 Volume ID: vol-03e2dbe464b66f0a1 Device Name: xvdc
PSC:\ProgramData\Amazon\Tools> ebsnvme-id.exe4Disk Number: 4 Volume ID: vol-03e2dbe464b66f0a1 Device Name: xvdc