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.
Aktivieren von Enhanced Networking auf Ihrer Instance
Welches Verfahren Sie verwenden, hängt vom Betriebssystem der Instance ab.
Die AMIs für Amazon Linux enthalten den Kernel-Treiber, der für Enhanced Networking erforderlich ist, wenn ENA installiert ist und die ENA-Unterstützung aktiviert ist. Wenn Sie eine Instance mit einer HVM-Version von Amazon Linux auf einem unterstützten Instance-Typ starten, ist Enhanced Networking für Ihre Instance bereits aktiviert. Weitere Informationen finden Sie unter Testen, ob Enhanced Networking aktiviert ist.
Die neuesten HVMs von Ubuntu AMIs enthalten den Kernel-Treiber, der für erweiterte Netzwerke erforderlich ist, wenn ENA installiert ist, und die ENA-Unterstützung ist aktiviert. Wenn Sie also eine Instance mit dem aktuellen Ubuntu HVM-AMI auf einem unterstützten Instance-Typ starten, ist Enhanced Networking bereits für Ihre Instance aktiviert. Weitere Informationen finden Sie unter Testen, ob Enhanced Networking aktiviert ist.
Wenn Sie Ihre Instance aus einem älteren AMI gestartet haben und Enhanced Networking noch nicht aktiviert wurde, können Sie das Kernel-Paket linux-aws
installieren, um die aktuellen Enhanced Networking-Treiber zu erhalten und das erforderliche Attribut zu aktualisieren.
linux-aws
-Kernel-Paket (Ubuntu 16.04 oder höher) installieren
Ubuntu 16.04 und 18.04 werden mit dem benutzerdefinierten Ubuntu-Kernel geliefert (linux-aws
-Kernel-Paket). Um einen anderen Kernel zu verwenden, wenden Sie sich an Support
linux-aws
-Kernel-Paket (Ubuntu Trusty 14.04) installieren
-
Verbinden Sie sich mit der Instance.
-
Aktualisieren Sie den Cache der Paketverwaltung und die einzelnen Pakete.
ubuntu:~$
sudo apt-get update && sudo apt-get upgrade -y linux-awsWichtig
Wenn Sie während des Aktualisierungsvorgangs aufgefordert werden,
grub
zu installieren, verwenden Sie/dev/xvda
für die Installation vongrub
und wählen Sie anschließend aus, dass die aktuelle Version von/boot/grub/menu.lst
beibehalten werden soll. -
[EBS-gestützte Instance] Stoppen Sie die Instance von Ihrem lokalen Computer aus mithilfe der EC2 Amazon-Konsole oder mit einem der folgenden Befehle: stop-instances(AWS CLI) oder Stop-EC2Instance(AWS Tools for Windows PowerShell).
[In einem Instance-Speicher gesicherte Instance] Sie können die Instance nicht anhalten, um das Attribut zu ändern. Gehen Sie stattdessen wie folgt vor: So aktivieren Sie Enhanced Networking unter Ubuntu (Instance Store-Backed Instances).
-
Aktivieren Sie auf Ihrem lokalen Computer das Enhanced Networking-Attribut mit einem der folgenden Befehle:
-
modify-instance-attribute (AWS CLI)
aws ec2 modify-instance-attribute --instance-id
i-1234567890abcdef0
--ena-support -
Edit-EC2InstanceAttribute(Tools für Windows) PowerShell
Edit-EC2InstanceAttribute -InstanceId
i-1234567890abcdef0
-EnaSupport $true
-
-
(Optional) Erstellen Sie ein AMI von der Instance, wie unter Ein Amazon-EBS-gestütztes AMI erstellen beschrieben. Das AMI erbt das Enhanced Networking-Attribut
enaSupport
von der Instance. D. h. Sie können mit diesem AMI eine andere Instance starten, in der Enhanced Networking standardmäßig aktiviert ist. -
Starten Sie die Instance von Ihrem lokalen Computer aus mit der EC2 Amazon-Konsole oder einem der folgenden Befehle: start-instances(AWS CLI) oder Start-EC2Instance(AWS Tools for Windows PowerShell).
So aktivieren Sie Enhanced Networking unter Ubuntu (Instance Store-Backed Instances)
Führen Sie die Schritte aus dem vorherigen Verfahren durch bis zu dem Schritt, in dem die Instance angehalten wird. Erstellen Sie ein neues AMI, wie in Eine Instance-Speicher-gestützte AMI erstellen beschreiben, um sicherzustellen, dass Sie das Enhanced Networking-Attribut aktivieren, wenn Sie das AMI registrieren.
-
register-image (AWS CLI)
aws ec2 register-image --ena-support
...
-
Register-EC2Image (AWS Tools for Windows PowerShell)
Register-EC2Image -EnaSupport $true
...
Die neuesten Versionen AMIs für Red Hat Enterprise Linux, SUSE Linux Enterprise Server und CentOS enthalten den Kernel-Treiber, der für Enhanced Networking mit ENA erforderlich ist, und haben ENA-Unterstützung aktiviert. Wenn Sie also eine Instance mit dem aktuellen AMI auf einem unterstützten Instance-Typ starten, ist Enhanced Networking bereits für Ihre Instance aktiviert. Weitere Informationen finden Sie unter Testen, ob Enhanced Networking aktiviert ist.
In der folgenden Anleitung werden die Schritte beschrieben, die Sie für die Aktivierung von Enhanced Networking unter einer anderen Linux-Distribution als Amazon Linux AMI oder Ubuntu ausführen müssen. Weitere Informationen, z. B. hinsichtlich der genauen Syntax für Befehle, der Speicherorte von Dateien oder der Unterstützung von einzelnen Paketen bzw. Tools, finden Sie in der Dokumentation zu der jeweiligen Linux-Distribution.
Aktivieren von Enhanced Networking in Linux
-
Verbinden Sie sich mit der Instance.
-
Klonen Sie den Quellcode für den
ena
Kernel-Treiber auf Ihrer Instance von GitHub at. https://github.com/amzn/amzn-drivers(SUSE Linux Enterprise Server 12 SP2 und höher enthalten standardmäßig ENA 2.02, sodass Sie den ENA-Treiber nicht herunterladen und kompilieren müssen. Für SUSE Linux Enterprise Server 12 SP2 und höher sollten Sie eine Anfrage stellen, um die gewünschte Treiberversion zum Standardkernel hinzuzufügen). git clone https://github.com/amzn/amzn-drivers
-
Kompilieren und installieren Sie den
ena
-Kernel-Treiber in Ihrer Instance. Diese Schritte hängen von der Linux-Distribution ab. Weitere Informationen zur Kompilierung des Kernel-Treibers auf Red Hat Enterprise Linux finden Sie unter Wie installiere ich den neuesten ENS-Treiber für erweiterte Netzwerkunterstützung auf einer EC2 Amazon-Instance, die RHEL ausführt? -
Führen Sie den Befehl sudo depmod aus, um die Abhängigkeiten für das Modul zu aktualisieren.
-
Aktualisieren Sie
initramfs
in Ihrer Instance, um sicherzustellen, dass der neue Kernel-Treiber während des Bootvorgangs geladen wird. Wenn die Verteilung beispielsweise dracut unterstützt, können Sie den folgenden Befehl verwenden.dracut -f -v
-
Ermitteln Sie, ob Ihr System standardmäßig transparente Netzwerkschnittstellennamen verwendet. Systeme, die systemd- oder udev-Versionen ab 197 verwenden, können Ethernet-Geräte umbenennen, d. h. die einzige Netzwerkschnittstelle in einem solchen System wird nicht zwingend als
eth0
bezeichnet. Dieses Verhalten kann Probleme bei der Verbindung mit Ihrer Instance verursachen. Weitere Informationen und andere Konfigurationsoptionen finden Sie unter Predictable Network Interface Namesauf der freedesktop.org-Website. -
Sie können die systemd- und udev-Versionen auf RPM-basierten Systemen mit dem folgenden Befehl überprüfen.
rpm -qa | grep -e '^systemd-[0-9]\+\|^udev-[0-9]\+'
systemd-208-11.el7_0.2.x86_64
In dem Red Hat Enterprise Linux 7-Beispiel oben lautet die systemd-Version 208, d. h. transparente Netzwerkschnittstellennamen müssen deaktiviert werden.
-
Sie können transparente Netzwerkschnittstellennamen deaktivieren, indem Sie in der Zeile
net.ifnames=0
in der DateiGRUB_CMDLINE_LINUX
die Option/etc/default/grub
hinzufügen.sudo sed -i '/^GRUB\_CMDLINE\_LINUX/s/\"$/\ net\.ifnames\=0\"/' /etc/default/grub
-
Erstellen Sie die neue Grub-Konfigurationsdatei.
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
-
-
[EBS-gestützte Instance] Stoppen Sie die Instance von Ihrem lokalen Computer aus mithilfe der EC2 Amazon-Konsole oder mit einem der folgenden Befehle: stop-instances(AWS CLI), Stop-EC2Instance(AWS Tools for Windows PowerShell).
[In einem Instance-Speicher gesicherte Instance] Sie können die Instance nicht anhalten, um das Attribut zu ändern. Gehen Sie stattdessen wie folgt vor: So aktivieren Sie Enhanced Networking unter Linux (Instance-Speicher-gestützte Instances):.
-
Aktivieren Sie auf Ihrem lokalen Computer das Enhanced Networking-Attribut
enaSupport
mit einem der folgenden Befehle:-
modify-instance-attribute (AWS CLI)
aws ec2 modify-instance-attribute --instance-id
i-1234567890abcdef0
--ena-support -
Edit-EC2InstanceAttribute(Tools für Windows) PowerShell
Edit-EC2InstanceAttribute -InstanceId
i-1234567890abcdef0
-EnaSupport $true
-
-
(Optional) Erstellen Sie ein AMI von der Instance, wie unter Ein Amazon-EBS-gestütztes AMI erstellen beschrieben. Das AMI erbt das Enhanced Networking-Attribut
enaSupport
von der Instance. D. h. Sie können mit diesem AMI eine andere Instance starten, in der Enhanced Networking standardmäßig aktiviert ist.Wenn Ihr Instance-Betriebssystem eine
/etc/udev/rules.d/70-persistent-net.rules
-Datei enthält, müssen Sie diese vor der Erstellung des AMI löschen. Diese Datei enthält die MAC-Adresse des Ethernet-Adapters in der ursprünglichen Instance. Wenn eine andere Instance mit dieser Datei gestartet wird, kann das Betriebssystem das Gerät nicht finden und voneth0
schlägt möglicherweise fehl, was zu Problemen beim Start führt. Diese Datei wird während des nächsten Bootvorgangs neu generiert, und jede aus dem AMI gestartete Instance erstellt eine eigene Version der Datei. -
Starten Sie die Instance von Ihrem lokalen Computer aus mit der EC2 Amazon-Konsole oder einem der folgenden Befehle: start-instances(AWS CLI) oder Start-EC2Instance(AWS Tools for Windows PowerShell).
-
(Optional) Stellen Sie eine Verbindung mit Ihrer Instance her und überprüfen Sie, ob der Kernel-Treiber installiert wurde.
Wenn Sie nach der Aktivierung von Enhanced Networking keine Verbindung zu Ihrer Instance herstellen können, informieren Sie sich unter Problembehandlung beim ENA-Kernel-Treiber in Linux.
So aktivieren Sie Enhanced Networking unter Linux (Instance-Speicher-gestützte Instances):
Führen Sie die Schritte aus dem vorherigen Verfahren durch bis zu dem Schritt, in dem die Instance angehalten wird. Erstellen Sie ein neues AMI, wie in Eine Instance-Speicher-gestützte AMI erstellen beschreiben, um sicherzustellen, dass Sie das Enhanced Networking-Attribut aktivieren, wenn Sie das AMI registrieren.
-
register-image (AWS CLI)
aws ec2 register-image --ena-support
...
-
Register-EC2Image (AWS Tools for Windows PowerShell)
Register-EC2Image -EnaSupport
...
Diese Methode ist nur für Test- und Feedbackzwecke. Sie ist nicht für die Nutzung mit Produktionsbereitstellungen gedacht. Für Produktionsbereitstellungen siehe Ubuntu.
Wichtig
Bei Verwendung von DKMS wird die Supportvereinbarung für Ihr Abonnement unwirksam. Es sollte nicht für Produktionsbereitstellungen verwendet werden.
So aktivieren Sie Enhanced Networking mit ENA unter Ubuntu (EBS-gestützte Instances)
-
Führen Sie die Schritte 1 und 2 unter Ubuntu aus.
-
Installieren Sie die
build-essential
-Pakete zum Kompilieren des Kernel-Treibers und dasdkms
-Paket, damit Ihrena
-Modul bei jeder Aktualisierung des Kernels neu erstellt wird.ubuntu:~$
sudo apt-get install -y build-essential dkms -
Klonen Sie die Quelle für den
ena
Kernel-Treiber auf Ihrer Instance von GitHub at aushttps://github.com/amzn/amzn-drivers. ubuntu:~$
git clone https://github.com/amzn/amzn-drivers -
Verschieben Sie das
amzn-drivers
-Paket in das Verzeichnis/usr/src/
, sodass es von DKMS gefunden und bei jedem Kernel-Update neu erstellt wird. Fügen Sie die Versionsnummer des Quellcodes an den Verzeichnisnamen an (Sie finden die aktuelle Versionsnummer in den Versionshinweisen). Im folgenden Beispiel wird Version1.0.0
angezeigt.ubuntu:~$
sudo mv amzn-drivers /usr/src/amzn-drivers-1.0.0 -
Erstellen Sie eine DKMS-Konfigurationsdatei mit den folgenden Werten. Geben Sie dabei Ihre
ena
-Version an.Erstellen Sie die Datei.
ubuntu:~$
sudo touch /usr/src/amzn-drivers-1.0.0/dkms.confÖffnen Sie die Datei und fügen Sie die folgenden Werte hinzu.
ubuntu:~$
sudo vim /usr/src/amzn-drivers-1.0.0/dkms.conf PACKAGE_NAME="ena" PACKAGE_VERSION="1.0.0" CLEAN="make -C kernel/linux/ena clean" MAKE="make -C kernel/linux/ena/ BUILD_KERNEL=${kernelver}" BUILT_MODULE_NAME[0]="ena" BUILT_MODULE_LOCATION="kernel/linux/ena" DEST_MODULE_LOCATION[0]="/updates" DEST_MODULE_NAME[0]="ena" AUTOINSTALL="yes" -
Verwenden Sie DKMS, um den
ena
-Kernel-Treiber in der Instance hinzuzufügen, zu erstellen und zu installieren.Den Kernel-Treiber DKMS hinzufügen.
ubuntu:~$
sudo dkms add -m amzn-drivers -v 1.0.0Erstellen Sie den Kernel-Treiber mit dem dkms-Befehl.
ubuntu:~$
sudo dkms build -m amzn-drivers -v 1.0.0Installieren Sie den Kernel-Treiber mit dkms.
ubuntu:~$
sudo dkms install -m amzn-drivers -v 1.0.0 -
Erstellen Sie
initramfs
neu, damit der richtige Kernel-Treiber während des Bootvorgangs geladen wird.ubuntu:~$
sudo update-initramfs -u -k all -
Stellen Sie sicher, dass der
ena
-Kernel-Treiber installiert ist. Verwenden Sie dafür den Befehl „modinfo ena“ von Testen, ob Enhanced Networking aktiviert ist.ubuntu:~$
modinfo ena filename: /lib/modules/3.13.0-74-generic/updates/dkms/ena.ko version: 1.0.0 license: GPL description: Elastic Network Adapter (ENA) author: Amazon.com, Inc. or its affiliates srcversion: 9693C876C54CA64AE48F0CA alias: pci:v00001D0Fd0000EC21sv*sd*bc*sc*i* alias: pci:v00001D0Fd0000EC20sv*sd*bc*sc*i* alias: pci:v00001D0Fd00001EC2sv*sd*bc*sc*i* alias: pci:v00001D0Fd00000EC2sv*sd*bc*sc*i* depends: vermagic: 3.13.0-74-generic SMP mod_unload modversions parm: debug:Debug level (0=none,...,16=all) (int) parm: push_mode:Descriptor / header push mode (0=automatic,1=disable,3=enable) 0 - Automatically choose according to device capability (default) 1 - Don't push anything to device memory 3 - Push descriptors and header buffer to device memory (int) parm: enable_wd:Enable keepalive watchdog (0=disable,1=enable,default=1) (int) parm: enable_missing_tx_detection:Enable missing Tx completions. (default=1) (int) parm: numa_node_override_array:Numa node override map (array of int) parm: numa_node_override:Enable/Disable numa node override (0=disable) (int) -
Fahren Sie mit Schritt 3 in Ubuntu fort.
Wenn Sie Ihre Instance gestartet haben und Enhanced Networking noch nicht aktiviert wurde, müssen Sie den erforderlichen Netzwerkadaptertreiber herunterladen und in der Instance installieren sowie anschließend das enaSupport
-Instance-Attribut setzen, um die optimierte Netzwerkleistung zu erzielen.
Aktivieren von Enhanced Networking
-
Stellen Sie eine Verbindung mit Ihrer Instance her und melden Sie sich als lokaler Administrator an.
-
[Nur Windows Server 2016 und 2019] Führen Sie das folgende EC2 PowerShell Startskript aus, um die Instanz zu konfigurieren, nachdem der Treiber installiert wurde.
PS C:\>
C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeInstance.ps1 -Schedule -
Installieren Sie den Treiber in der Instance, indem Sie wie folgt vorgehen:
-
Laden Sie
den aktuellen Treiber in die Instance herunter. -
Extrahieren Sie die ZIP-Datei.
-
Installieren Sie den Treiber, indem Sie das
install.ps1
PowerShell Skript ausführen.Anmerkung
Wenn ein Fehler der Ausführungsrichtlinie gemeldet wird, weisen Sie der Richtlinie
Unrestricted
zu (standardmäßig istRestricted
oderRemoteSigned
zugewiesen). Führen Sie dasinstall.ps1
PowerShell Skript in einer Befehlszeile ausSet-ExecutionPolicy -ExecutionPolicy Unrestricted
, und führen Sie es dann erneut aus.
-
-
Stoppen Sie die Instance auf Ihrem lokalen Computer mithilfe der EC2 Amazon-Konsole oder mit einem der folgenden Befehle: stop-instances(AWS CLI) oder Stop-EC2Instance(AWS Tools for Windows PowerShell).
-
Aktivieren Sie die ENA-Unterstützung in Ihrer Instance wie folgt:
-
Überprüfen Sie von Ihrem lokalen Computer aus das EC2 ENA-Supportattribut der Instance auf Ihrer Instance, indem Sie einen der folgenden Befehle ausführen. Wenn das Attribut nicht aktiviert ist, wird „[]” oder ein leeres Feld zurückgegeben.
EnaSupport
ist standardmäßig auffalse
festgelegt.-
describe-instances (AWS CLI)
aws ec2 describe-instances --instance-ids
i-1234567890abcdef0
--query "Reservations[].Instances[].EnaSupport" -
Get-EC2Instance(Tools für Windows PowerShell)
(Get-EC2Instance -InstanceId
i-1234567890abcdef0
).Instances.EnaSupport
-
-
Führen Sie zur Aktivierung der ENA-Unterstützung einen der folgenden Befehle aus:
-
modify-instance-attribute (AWS CLI)
aws ec2 modify-instance-attribute --instance-id
i-1234567890abcdef0
--ena-support -
Edit-EC2InstanceAttribute (AWS Tools for Windows PowerShell)
Edit-EC2InstanceAttribute -InstanceId
i-1234567890abcdef0
-EnaSupport $true
Wenn beim Neustarten der Instance Probleme auftreten, können Sie die ENA-Unterstützung auch über einen der folgenden Befehle deaktivieren:
-
modify-instance-attribute (AWS CLI)
aws ec2 modify-instance-attribute --instance-id
i-1234567890abcdef0
--no-ena-support -
Edit-EC2InstanceAttribute (AWS Tools for Windows PowerShell)
Edit-EC2InstanceAttribute -InstanceId
i-1234567890abcdef0
-EnaSupport $false
-
-
Stellen Sie sicher, dass das Attribut auf
true
gesetzt wurde, indem Sie den Befehl describe-instances oder Get-EC2Instance wie oben gezeigt ausführen. Die Ausgabe sollte hetzt folgendermaßen aussehen:[ true ]
-
-
Starten Sie die Instance von Ihrem lokalen Computer aus mit der EC2 Amazon-Konsole oder einem der folgenden Befehle: start-instances(AWS CLI) oder Start-EC2Instance(AWS Tools for Windows PowerShell).
-
Prüfen Sie auf der Instance, wie folgt ob der ENA-Treiber installiert und aktiviert ist:
-
Klicken Sie mit der rechten Maustaste auf das Netzwerksymbol und wählen Sie Open Network and Sharing Center aus.
-
Wählen Sie den Ethernet-Adapter aus (z. B. Ethernet 2).
-
Wählen Sie Details aus. Prüfen Sie unter Network Connection Details, ob Description den Wert Amazon Elastic Network Adapter hat.
-
-
(Optional) Erstellen Sie aus der Instance ein AMI. Das AMI übernimmt das
enaSupport
-Attribute von der Instance. D. h. Sie können mit diesem AMI eine andere Instance starten, in der ENA standardmäßig aktiviert ist.