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.
Zunehmende Netzwerkschnittstellen für Amazon ECS Linux-Container-Instances
Anmerkung
Dieses Feature ist nicht auf Fargate verfügbar.
Jede Aufgabe, die den awsvpc
Netzwerkmodus verwendet, erhält ihre eigene elastic network interface (ENI), die an die Container-Instance angehängt ist, die sie hostet. Es gibt ein Standardlimit für die Anzahl der Netzwerkschnittstellen, die an eine EC2 Amazon-Instance angehängt werden können, und die primäre Netzwerkschnittstelle zählt als eine. Beispielsweise können einer c5.large
Instance standardmäßig bis zu drei ENIs zugeordnet sein. Die primäre Netzwerkschnittstelle für die Instance zählt als eine, sodass Sie der Instance zwei ENIs weitere hinzufügen können. Weil jede Aufgabe, die den awsvpc
Netzwerkmodus verwendet, eine ENI, können Sie in der Regel nur zwei solcher Aufgaben auf diesem Instanztyp ausführen.
Amazon ECS unterstützt das Starten von Container-Instances mit mehr ENI Dichte unter Verwendung unterstützter EC2 Amazon-Instance-Typen. Wenn Sie diese Instance-Typen verwenden und die awsvpcTrunking
Kontoeinstellungen aktivieren, ENIs sind weitere für neu gestartete Container-Instances verfügbar. Diese Konfiguration gibt Ihnen die Möglichkeit, mehrere Aufgaben auf den einzelnen Container-Instances zu platzieren. Informationen zum Aktivieren der Funktion mithilfe der Konsole finden Sie unterAmazon ECS-Kontoeinstellungen ändern. Informationen AWS CLI zum Aktivieren der Funktion finden Sie unterVerwaltung der Amazon ECS-Kontoeinstellungen mit dem AWS CLI.
Beispiel: Eine c5.large
Instanz mit awsvpcTrunking
hat einen erhöhten ENI Limit von zwölf. Die Container-Instance verfügt über die primäre Netzwerkschnittstelle und Amazon ECS erstellt und fügt eine "Stamm"-Netzwerkschnittstelle an die Container-Instance an. Mit dieser Konfiguration können Sie also zehn Aufgaben anstelle der aktuellen zwei Aufgaben auf der Container-Instance starten.
Die Stamm-Netzwerkschnittstelle wird vollständig von Amazon ECS verwaltet. Sie wird gelöscht, wenn Sie Ihre Container-Instance beenden oder die Registrierung auf dem Cluster aufheben. Weitere Informationen finden Sie unter Netzwerkoptionen für Amazon ECS-Aufgaben für den EC2 Starttyp.
Überlegungen
Beachten Sie Folgendes bei der Verwendung von ENI Trunking-Funktion.
-
Nur Linux-Varianten des Amazon ECS-optimierten AMI oder andere Amazon Linux-Varianten mit Version
1.28.1
oder höher des Container-Agents und Version1.28.1-2
oder höher des ecs-init-Pakets unterstützen die erhöhte ENI Grenzen. Wenn Sie die neueste Linux-Variante des Amazon-ECS-optimierten AMI verwenden, sind diese Anforderungen erfüllt. Windows-Container werden derzeit nicht unterstützt. -
Nur neue EC2 Amazon-Instances, die nach der Aktivierung gestartet wurden,
awsvpcTrunking
erhalten die erhöhten ENI Grenzwerte und die Trunk-Netzwerkschnittstelle. Zuvor gestarteten Instances erhalten keine dieser Features, unabhängig von den durchgeführten Aktionen. -
Amazon EC2 Amazon-Instances müssen ressourcenbasierte IPv4 DNS-Anfragen deaktiviert sein. Um diese Option zu deaktivieren, deaktivieren Sie die Option Ressourcenbasierte DNS-Anfragen IPV4 (A-Datensatz) aktivieren, wenn Sie eine neue Instance in der EC2 Amazon-Konsole erstellen. Verwenden Sie den folgenden Befehl AWS CLI, um diese Option mit dem zu deaktivieren.
aws ec2 modify-private-dns-name-options --instance-id
i-xxxxxxx
--no-enable-resource-name-dns-a-record --no-dry-run -
EC2 Amazon-Instances in gemeinsam genutzten Subnetzen werden nicht unterstützt. Sie können sich nicht bei einem Cluster registrieren, wenn sie verwendet werden.
-
Ihre Aufgaben müssen den
awsvpc
Netzwerkmodus und den EC2 Starttyp verwenden. Aufgaben, die den Starttyp Fargate verwenden, erhielten immer einen eigenen ENI unabhängig davon, wie viele gestartet werden, wird diese Funktion also nicht benötigt. -
Ihre Aufgaben müssen in derselben Amazon VPC wie Ihre Container-Instance gestartet werden. Beim Starten Ihrer Aufgaben kommt es zu einem Attributfehler, wenn sich die Aufgaben nicht in derselben VPC befinden.
-
Beim Starten einer neuen Container-Instance wechselt die Instance in den Status
REGISTERING
und die Stamm-ENI wird für die Instance bereitgestellt. Wenn die Registrierung fehlschlägt, wechselt die Instance in den StatusREGISTRATION_FAILED
. Sie können Probleme bei einer fehlgeschlagenen Registrierung beheben, indem Sie die Container-Instance beschreiben, um das FeldstatusReason
einzusehen, welches den Grund für den Fehler beschreibt. Die Container-Instance kann dann manuell abgemeldet oder beendet werden. Sobald die Container-Instance erfolgreich abgemeldet oder beendet wurde, löscht Amazon ECS den Trunk ENI.Anmerkung
Amazon ECS sendet Statusänderungsereignisse für Container-Instances aus, die Sie für Instances überwachen können, die zu einem
REGISTRATION_FAILED
-Zustand übergehen. Weitere Informationen finden Sie unter Ereignisse zur Änderung des Status der Amazon ECS-Container-Instance. -
Sobald die Container-Instance beendet wird, wechselt die Instance in den Status
DEREGISTERING
und die Bereitstellung der Stamm-ENI wird aufgehoben. Die Instance wechselt dann in einenINACTIVE
-Status. -
Wenn eine Container-Instance in einem öffentlichen Subnetz mit erhöhtem ENI limits wird gestoppt und anschließend neu gestartet, verliert die Instance ihre öffentliche IP-Adresse und der Container-Agent verliert seine Verbindung.
-
Wenn Sie diese Option aktivieren
awsvpcTrunking
, erhalten Container-Instances eine zusätzliche ENI das die Standardsicherheitsgruppe der VPC verwendet und von Amazon ECS verwaltet wird.Eine Standard-VPC umfasst ein öffentliches Subnetz in jeder Availability Zone, ein Internet-Gateway und Einstellungen zum Aktivieren der DNS-Auflösung. Das Subnetz ist ein öffentliches Subnetz, da die Haupt-Routing-Tabelle den für das Internet bestimmten Datenverkehr des Subnetzes an das Internet-Gateway sendet. Sie können ein Standardsubnetz zu einem privaten Subnetz machen, indem Sie die Route vom Ziel 0.0.0.0/0 zum Internet-Gateway verschieben. Wenn Sie dies tun, kann jedoch keine Container-Instance, die in diesem Subnetz ausgeführt wird, auf das Internet zugreifen. Sie können Sicherheitsgruppenregeln hinzufügen oder löschen, um den Datenverkehr in und aus Ihren Subnetzen zu kontrollieren. Weitere Informationen finden Sie unter Sicherheitsgruppenregeln im Amazon Virtual Private Cloud Cloud-Benutzerhandbuch.
Voraussetzungen
Bevor Sie eine Container-Instance mit dem erhöhten ENI Limits, die folgenden Voraussetzungen müssen erfüllt sein.
-
Die serviceverknüpfte Rolle für Amazon ECS muss erstellt werden. Die serviceverknüpfte Amazon ECS-Rolle gibt Amazon ECS die Erlaubnis, in Ihrem Namen Anrufe an andere AWS Services zu tätigen. Diese Rolle wird automatisch für Sie erstellt, wenn Sie einen Cluster erstellen oder wenn Sie einen Service in der AWS Management Console erstellen oder aktualisieren. Weitere Informationen finden Sie unter Verwendung von serviceverknüpften Rollen für Amazon ECS. Sie können die serviceverknüpfte Rolle auch mit dem folgenden AWS CLI Befehl erstellen.
aws iam create-service-linked-role --aws-service-name ecs.amazonaws.com
-
Die IAM-Rolle Ihres Kontos oder Ihrer Container-Instance muss die
awsvpcTrunking
-Kontoeinstellung aktivieren. Wir empfehlen, dass Sie 2 Container-Instance-Rollen (ecsInstanceRole
) erstellen. Sie können dann dieawsvpcTrunking
Kontoeinstellung für eine Rolle aktivieren und diese Rolle für Aufgaben verwenden, die ENI-Trunking erfordern. Informationen zur Container-Instance-Rolle finden Sie unterIAM-Rolle für Amazon-ECS-Container-Instance.
Wenn die Voraussetzungen erfüllt sind, können Sie eine neue Container-Instance mit einem der unterstützten EC2 Amazon-Instance-Typen starten, und die Instance erhält die erhöhte ENI Grenzwerte. Eine Liste mit unterstützten Instance-Typen finden Sie unter Unterstützte Instances für mehr Amazon ECS-Container-Netzwerkschnittstellen. Die Container-Instance muss Version 1.28.1
oder höher des Container-Agenten haben sowie Version 1.28.1-2
oder höher des ecs-Init-Pakets. Wenn Sie die neueste Linux-Variante des Amazon-ECS-optimierten AMI verwenden, sind diese Anforderungen erfüllt. Weitere Informationen finden Sie unter Starten einer Amazon ECS Linux-Container-Instance.
Wichtig
Amazon EC2 Amazon-Instances müssen ressourcenbasierte IPv4 DNS-Anfragen deaktiviert sein. Um diese Option zu deaktivieren, stellen Sie sicher, dass die Option Ressourcenbasierte DNS-Anfragen IPV4 (A-Datensatz) aktivieren deaktiviert ist, wenn Sie eine neue Instance mit der Amazon-Konsole erstellen. EC2 Verwenden Sie den folgenden Befehl AWS CLI, um diese Option mit dem zu deaktivieren.
aws ec2 modify-private-dns-name-options --instance-id
i-xxxxxxx
--no-enable-resource-name-dns-a-record --no-dry-run
Um Ihre Container-Instances mit erhöhtem Wert anzuzeigen ENI Grenzwerte mit dem AWS CLI
Jede Container-Instance verfügt über eine standardmäßige Netzwerkschnittstelle, die als Stamm-Netzwerkschnittstelle bezeichnet wird. Verwenden Sie den folgenden Befehl, um Ihre Container-Instances mit erhöhten Werten aufzulisten ENI begrenzt, indem nach dem ecs.awsvpc-trunk-id
Attribut abgefragt wird, das darauf hinweist, dass es über eine Trunk-Netzwerkschnittstelle verfügt.
-
list-attributes (AWS CLI)
aws ecs list-attributes \ --target-type container-instance \ --attribute-name ecs.awsvpc-trunk-id \ --cluster
cluster_name
\ --regionus-east-1
-
Get- ECSAttribute Liste ()AWS Tools for Windows PowerShell
Get-ECSAttributeList -TargetType container-instance -AttributeName ecs.awsvpc-trunk-id -Region
us-east-1