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.
Zuweisen einer Netzwerkschnittstelle für eine Amazon ECS-Aufgabe
Die Aufgabenvernetzungsfeatures, die durch den Netzwerkmodus awsvpc
bereitgestellt werden, geben Amazon-ECS-Aufgaben dieselben Netzwerkeigenschaften wie Amazon-EC2-Instances. Die Verwendung des awsvpc
Netzwerkmodus vereinfacht Container-Netzwerke, da Sie mehr Kontrolle darüber haben, wie Ihre Anwendungen miteinander und mit anderen Diensten innerhalb Ihrer VPCs kommunizieren. Der awsvpc
Netzwerkmodus bietet auch mehr Sicherheit für Ihre Container, da Sie innerhalb Ihrer Aufgaben Sicherheitsgruppen und Netzwerküberwachungstools auf einer detaillierteren Ebene verwenden können. Sie können auch andere Amazon EC2 EC2-Netzwerkfunktionen wie VPC Flow Logs verwenden, um den Verkehr zu und von Ihren Aufgaben zu überwachen. Außerdem können Container, die zur selben Aufgabe gehören, über die Schnittstelle localhost
kommunizieren.
Das Task elastic network interface (ENI) ist eine vollständig verwaltete Funktion von Amazon ECS. Amazon ECS erstellt die ENI und hängt sie an die Amazon EC2 Host-Instance mit der angegebenen Sicherheitsgruppe an. Die Aufgabe sendet und empfängt Netzwerkverkehr über die ENI auf dieselbe Weise wie Amazon-EC2-Instances mit ihren primären Netzwerkschnittstellen. Jeder Aufgaben-ENI wird standardmäßig eine private IPv4-Adresse zugewiesen. Wenn Ihre VPC für den Dual-Stack-Modus aktiviert ist und Sie ein Subnetz mit einem IPv6-CIDR-Block verwenden, erhält die Aufgaben-ENI auch eine IPv6-Adresse. Jede Aufgabe kann nur eine ENI haben.
Diese ENIs sind in der Amazon EC2 EC2-Konsole für Ihr Konto sichtbar. Ihr Konto kann die ENIs nicht trennen oder ändern. Auf diese Weise wird ein versehentliches Löschen einer ENI, die der aktuell ausgeführten Aufgabe zugeordnet wird, verhindert. Sie können die ENI-Anhangsinformationen für Aufgaben in der Amazon ECS-Konsole oder bei der DescribeTasksAPI-Operation anzeigen. Wenn die Aufgabe angehalten oder der Service herunterskaliert wird, wird die Aufgaben-ENI getrennt und gelöscht.
Wenn Sie eine höhere ENI-Dichte benötigen, verwenden Sie die awsvpcTrunking
Kontoeinstellungen. Amazon ECS erstellt auch eine „Trunk“ -Netzwerkschnittstelle für Ihre Container-Instance und fügt sie an. Das Stamm-Netzwerk wird vollständig von Amazon ECS verwaltet. Die Stamm-ENI wird gelöscht, wenn Sie Ihre Container-Instance beenden oder die Registrierung auf dem Amazon-ECS-Cluster aufheben. Weitere Informationen zur awsvpcTrunking
Kontoeinstellung finden Sie unterVoraussetzungen.
Sie geben awsvpc
im networkMode
Parameter der Aufgabendefinition an. Weitere Informationen finden Sie unter Netzwerkmodus.
Wenn Sie dann eine Aufgabe ausführen oder einen Dienst erstellen, verwenden Sie den networkConfiguration
Parameter, der ein oder mehrere Subnetze zum Platzieren Ihrer Aufgaben und eine oder mehrere Sicherheitsgruppen zum Anhängen an eine ENI enthält. Weitere Informationen finden Sie unter Netzwerkkonfiguration. Die Aufgaben werden auf vereinbaren Amazon-EC2-Instances in denselben Availability Zones wie solche Subnetze platziert und die angegebenen Sicherheitsgruppen werden der ENI zugeordnet, die für die Aufgabe bereitgestellt wird.
Überlegungen zu Linux
Beachten Sie Folgendes, wenn Sie das Linux-Betriebssystem verwenden.
-
Wenn Sie eine p5.48xlarge-Instance im
awsvpc
Modus verwenden, können Sie nicht mehr als eine Aufgabe auf der Instance ausführen. -
Für Aufgaben und Dienste, die den
awsvpc
Netzwerkmodus verwenden, ist die mit dem Service verknüpfte Amazon ECS-Rolle erforderlich, um Amazon ECS die Berechtigungen zu erteilen, in Ihrem Namen Anrufe an andere AWS Dienste 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
-
Für Ihre Amazon EC2 Linux-Instance ist eine Version
1.15.0
oder höher des Container-Agents erforderlich, um Tasks auszuführen, die denawsvpc
Netzwerkmodus verwenden. Wenn Sie das Amazon-ECS-optimierte AMI verwenden, benötigt Ihre Instance mindestens Version1.15.0-4
desecs-init
-Pakets. -
Amazon ECS füllt den Hostnamen der Aufgabe mit einem von Amazon bereitgestellten (internen) DNS-Hostnamen auf, wenn sowohl die Option
enableDnsHostnames
als auch die OptionenableDnsSupport
auf Ihrer VPC aktiviert sind. Wenn diese Optionen nicht aktiviert sind, ist der DNS-Hostname der Aufgabe ein zufälliger Hostname. Weitere Informationen zu den DNS-Einstellungen für eine ECS finden Sie unter Verwenden von DNS in Ihrer VPC im Amazon-VPC-Benutzerhandbuch. -
Jede Amazon-ECS-Aufgabe, die den Netzwerkmodus
awsvpc
verwendet, erhält eine eigene Elastic-Network-Schnittstelle (ENI), die an die Amazon-EC2-Instance angehängt wird, die sie hostet. Es gibt ein Standardkontingent für die Anzahl der Netzwerkschnittstellen, die an eine Amazon-EC2-Linux-Instance angehängt werden können. Dabei zählt die primäre Netzwerkschnittstelle als eine Einheit. Beispiel: Standardmäßig können an einec5.large
-Instance nur bis zu drei ENIs angehängt werden. Die primäre Netzwerkschnittstelle für die Instance zählt dazu. Sie können zwei zusätzliche ENIs zu der Instance anhängen. Da jede Aufgabe, die den Netzwerkmodusawsvpc
verwendet, eine ENI benötigt, können Sie nur zwei solcher Aufgaben auf diesem Instance-Typ ausführen. Weitere Informationen zu den standardmäßigen ENI-Grenzwerten für jeden Instance-Typ finden Sie unter IP-Adressen pro Netzwerkschnittstelle pro Instance-Typ im Amazon EC2 EC2-Benutzerhandbuch. -
Amazon ECS unterstützt das Starten von Amazon-EC2-Linux-Instances mit unterstützten Instance-Typen mit erhöhter ENI-Dichte. Wenn Sie sich bei der
awsvpcTrunking
-Kontoeinstellung anmelden und Amazon EC2 Linux-Instances mit diesen Instance-Typen in Ihrem Cluster registrieren, haben diese Instances ein höheres ENI-Kontingent. Wenn Sie diese Instances mit diesem höheren Kontingent verwenden, können Sie mehr Aufgaben auf jeder Amazon-EC2-Linux-Instance platzieren. Um die erhöhte ENI-Dichte mit dem Trunking-Feature zu nutzen, benötigen Ihre Amazon EC2-Instances mindestens Version1.28.1
des Container-Agenten. Wenn Sie das Amazon-ECS-optimierte AMI verwenden, benötigt Ihre Instance mindestens Version1.28.1-2
desecs-init
-Pakets. Weitere Informationen zum Aktivieren derawsvpcTrunking
-Kontoeinstellung finden Sie unter Greifen Sie mit Kontoeinstellungen auf Amazon ECS-Funktionen zu. Weitere Informationen zum ENI-Trunking finden Sie unter Zunehmende Netzwerkschnittstellen für Amazon ECS Linux-Container-Instances. -
Beim Hosten von Aufgaben, die den
awsvpc
-Netzwerkmodus auf Amazon EC2 Linux-Instances verwenden, erhalten Ihre Aufgaben-ENIs keine öffentlichen IP-Adressen. Um auf das Internet zuzugreifen, müssen Aufgaben in einem privaten Subnetz gestartet werden, das für die Verwendung eines NAT-Gateways konfiguriert ist. Weitere Informationen finden Sie unter NAT-Gateways im Amazon VPC-Benutzerhandbuch. Der eingehende Netzwerkzugriff muss innerhalb einer VPC mithilfe der privaten IP-Adresse oder über einen Load Balancer innerhalb der VPC weitergeleitet werden. Aufgaben, die in öffentlichen Subnetzen gestartet werden, haben keinen Zugriff auf das Internet. -
Amazon ECS erkennt nur die ENIs, die an Ihre Amazon-EC2-Linux-Instances angehängt wurden. Wenn Sie ENIs manuell an Ihre Instances angefügt haben, könnte Amazon ECS versuchen, eine Aufgabe einer Instance hinzuzufügen, die nicht über genügend Netzwerkadapter verfügt. Das kann zu einem Timout bei der Aufgabe führen, sodass diese in den Status der Aufhebung der Bereitstellung übergeht und dann gestoppt wird. Wir empfehlen Ihnen, keine ENIs manuell an Ihre Instances anzufügen.
-
Amazon EC2 Linux-Instances müssen mit der
ecs.capability.task-eni
-Fähigkeit registriert werden, um für die Platzierung von Aufgaben im Netzwerkmodusawsvpc
berücksichtigt zu werden. Instances, die Version1.15.0-4
oder höher vonecs-init
ausführen, werden automatisch mit diesem Attribut registriert. -
Die ENIs, die an Ihre Amazon EC2 Linux-Instances angefügt wurden und auch damit erstellt wurden, können nicht manuell getrennt oder über Ihr Konto geändert werden. Auf diese Weise wird ein versehentliches Löschen einer ENI, die einer aktuell ausgeführten Aufgabe zugeordnet wird, verhindert. Wenn Sie die ENIs für eine Aufgabe freigeben möchten, stoppen Sie die Aufgabe.
-
Es gilt eine Beschränkung von 16 Subnetzen und 5 Sicherheitsgruppen, die in
awsVpcConfiguration
angegeben werden können, wenn eine Aufgabe ausgeführt oder ein Service erstellt wird, der denawsvpc
-Netzwerkmodus verwendet. Weitere Informationen finden Sie AwsVpcConfigurationin der Amazon Elastic Container Service API-Referenz. -
Wenn eine Aufgabe mit dem Netzwerkmodus
awsvpc
gestartet wird, erstellt der Amazon-ECS-Containeragent einen zusätzlichenpause
-Container für jede Aufgabe, bevor er die Container in der Aufgabendefinition startet. Anschließend konfiguriert es den Netzwerk-Namespace despause
Containers, indem es die amazon-ecs-cni-pluginsCNI-Plugins ausführt. Dann startet der Agent die restlichen Container in der Aufgabe, sodass sie den Netzwerk-Stack des pause
-Containers gemeinsam verwenden. Das bedeutet, dass alle Container in der Aufgabe über IP-Adressen der Elastic-Network-Schnittstelle angesprochen werden und miteinander über dielocalhost
-Schnittstelle kommunizieren können. -
Services mit Aufgaben, die den
awsvpc
-Netzwerkmodus verwenden, unterstützen nur Application Load Balancer und Network Load Balancer. Wenn Sie eine beliebige Zielgruppe für diese Services erstellen, müssen Sie zudemip
als Zieltyp auswählen. Verwenden Sie nichtinstance
. Dies liegt daran, dass Aufgaben, die den Netzwerkmodusawsvpc
verwenden, einer ENI zugeordnet sind, nicht einer Amazon EC2 Linux-Instance. Weitere Informationen finden Sie unter Verwenden Sie Load Balancing, um den Amazon ECS-Serviceverkehr zu verteilen. -
Wenn Ihre VPC aktualisiert wird, um die eingestellten DHCP-Optionen zu ändern, können Sie diese Änderungen nicht für vorhandene Aufgaben übernehmen. Starten Sie neue Aufgaben, für die diese Änderungen übernommen wurden. Überprüfen Sie, ob sie ordnungsgemäß funktionieren, und beenden Sie dann die vorhandenen Aufgaben, um diese Netzwerkkonfigurationen sicher zu ändern.
Überlegungen zu Windows
Beachten Sie Folgendes, wenn Sie das Windows-Betriebssystem verwenden:
-
Container-Instances, die das für Amazon ECS optimierte Windows Server 2016-AMI verwenden, können keine Aufgaben hosten, die den Netzwerkmodus
awsvpc
verwenden. Wenn Sie über einen Cluster verfügen, der Amazon-ECS-optimierte Windows Server 2016-AMIs und Windows-AMIs enthält, die denawsvpc
-Netzwerkmodus unterstützen, werden Aufgaben, die denawsvpc
-Netzwerkmodus verwenden werden nicht auf den Windows 2016 Server-Instances gestartet. Vielmehr werden sie auf Instances gestartet, die denawsvpc
-Netzwerkmodus unterstützen. -
Ihre Amazon EC2 Windows-Instance benötigt Version
1.57.1
oder höher des Container-Agenten, um CloudWatch Metriken für Windows-Container zu verwenden, die denawsvpc
Netzwerkmodus verwenden. -
Für Aufgaben und Dienste, die den
awsvpc
Netzwerkmodus verwenden, ist die mit dem Service verknüpfte Amazon ECS-Rolle erforderlich, um Amazon ECS die Berechtigungen zu erteilen, in Ihrem Namen Anrufe an andere AWS Dienste zu tätigen. Diese Rolle wird automatisch für Sie erstellt, wenn Sie einen Cluster erstellen oder wenn Sie einen Service in 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
-
Für Ihre Amazon EC2 Windows-Instance ist eine Version
1.54.0
des Container-Agents oder höher erforderlich, um Tasks auszuführen, die denawsvpc
-Netzwerkmodus verwenden. Wenn Sie auf der Instance ein Bootstrap ausführen, müssen Sie die Optionen konfigurieren, die für denawsvpc
-Netzwerkmodus erforderlich sind. Weitere Informationen finden Sie unter Bootstrapping von Amazon ECS-Windows-Container-Instances zur Datenübergabe. -
Amazon ECS füllt den Hostnamen der Aufgabe mit einem von Amazon bereitgestellten (internen) DNS-Hostnamen auf, wenn sowohl die Option
enableDnsHostnames
als auch die OptionenableDnsSupport
auf Ihrer VPC aktiviert sind. Wenn diese Optionen nicht aktiviert sind, ist der DNS-Hostname der Aufgabe ein zufälliger Hostname. Weitere Informationen zu den DNS-Einstellungen für eine ECS finden Sie unter Verwenden von DNS in Ihrer VPC im Amazon-VPC-Benutzerhandbuch. -
Jede Amazon-ECS-Aufgabe, die den Netzwerkmodus
awsvpc
verwendet, erhält eine eigene Elastic-Network-Schnittstelle (ENI), die an die Amazon-EC2-Windows-Instance angehängt wird, die sie hostet. Es gibt ein Standardkontingent für die Anzahl der Netzwerkschnittstellen, die an eine Amazon-EC2-Windows-Instance angehängt werden können. Dabei zählt die primäre Netzwerkschnittstelle als eine Einheit. Beispiel: Standardmäßig können an einec5.large
-Instance nur bis zu drei ENIs angehängt werden. Die primäre Netzwerkschnittstelle für die Instance zählt dazu. Sie können zwei zusätzliche ENIs zu der Instance anhängen. Da jede Aufgabe, die den Netzwerkmodusawsvpc
verwendet, eine ENI benötigt, können Sie nur zwei solcher Aufgaben auf diesem Instance-Typ ausführen. Weitere Informationen zu den standardmäßigen ENI-Grenzwerten für jeden Instance-Typ finden Sie unter IP-Adressen pro Netzwerkschnittstelle pro Instance-Typ im Amazon EC2 EC2-Benutzerhandbuch. -
Beim Hosten von Aufgaben, die den
awsvpc
-Netzwerkmodus auf Amazon EC2 Windows-Instances verwenden, erhalten Ihre Aufgaben-ENIs keine öffentlichen IP-Adressen. Um auf das Internet zuzugreifen, starten Sie Aufgaben in einem privaten Subnetz, das für die Verwendung eines NAT-Gateways konfiguriert ist. Weitere Informationen finden Sie unter NAT-Gateways im Amazon VPC-Benutzerhandbuch. Der eingehende Netzwerkzugriff muss innerhalb der VPC mithilfe der privaten IP-Adresse oder über einen Load Balancer innerhalb der VPC weitergeleitet werden. Aufgaben, die in öffentlichen Subnetzen gestartet werden, haben keinen Zugriff auf das Internet. -
Amazon ECS erkennt nur die ENIs, die an Ihre Amazon EC2 Windows-Instances angehängt wurden. Wenn Sie ENIs manuell an Ihre Instances angefügt haben, könnte Amazon ECS versuchen, eine Aufgabe einer Instance hinzuzufügen, die nicht über genügend Netzwerkadapter verfügt. Das kann zu einem Timout bei der Aufgabe führen, sodass diese in den Status der Aufhebung der Bereitstellung übergeht und dann gestoppt wird. Wir empfehlen Ihnen, keine ENIs manuell an Ihre Instances anzufügen.
-
Amazon EC2-Windows-Instances müssen mit der
ecs.capability.task-eni
-Fähigkeit registriert werden, um für die Platzierung von Aufgaben im Netzwerkmodusawsvpc
berücksichtigt zu werden. -
Sie können ENIs, die an Ihre Amazon EC2-Windows-Instances angefügt wurden und auch damit erstellt wurden, nicht manuell trennen oder ändern. Auf diese Weise wird ein versehentliches Löschen einer ENI, die der aktuell ausgeführten Aufgabe zugeordnet wird, verhindert. Wenn Sie die ENIs für eine Aufgabe freigeben möchten, stoppen Sie die Aufgabe.
-
Sie können nur bis zu 16 Subnetze und 5 Sicherheitsgruppen in
awsVpcConfiguration
angeben, wenn Sie Aufgaben ausführen oder Services erstellen, die denawsvpc
-Netzwerkmodus verwenden. Weitere Informationen finden Sie AwsVpcConfigurationin der Amazon Elastic Container Service API-Referenz. -
Wenn eine Aufgabe mit dem Netzwerkmodus
awsvpc
gestartet wird, erstellt der Amazon-ECS-Containeragent einen zusätzlichenpause
-Container für jede Aufgabe, bevor er die Container in der Aufgabendefinition startet. Anschließend konfiguriert es den Netzwerk-Namespace despause
Containers, indem es die amazon-ecs-cni-pluginsCNI-Plugins ausführt. Dann startet der Agent die restlichen Container in der Aufgabe, sodass sie den Netzwerk-Stack des pause
-Containers gemeinsam verwenden. Das bedeutet, dass alle Container in der Aufgabe über IP-Adressen der Elastic-Network-Schnittstelle angesprochen werden und miteinander über dielocalhost
-Schnittstelle kommunizieren können. -
Services mit Aufgaben, die den
awsvpc
-Netzwerkmodus verwenden, unterstützen nur Application Load Balancer und Network Load Balancer. Wenn Sie eine beliebige Zielgruppe für diese Services erstellen, müssen Sieip
als Zieltyp auswählen, und nichtinstance
. Dies liegt daran, dass Aufgaben, die den Netzwerkmodusawsvpc
verwenden, einer ENI zugeordnet sind, nicht einer Amazon EC2 Windows-Instance. Weitere Informationen finden Sie unter Verwenden Sie Load Balancing, um den Amazon ECS-Serviceverkehr zu verteilen. -
Wenn Ihre VPC aktualisiert wird, um die eingestellten DHCP-Optionen zu ändern, können Sie diese Änderungen nicht für vorhandene Aufgaben übernehmen. Starten Sie neue Aufgaben, für die diese Änderungen übernommen wurden. Überprüfen Sie, ob sie ordnungsgemäß funktionieren, und beenden Sie dann die vorhandenen Aufgaben, um diese Netzwerkkonfigurationen sicher zu ändern.
-
Die folgenden Punkte werden nicht unterstützt, wenn Sie den Netzwerkmodus
awsvpc
in einer EC2-Windows-Konfiguration verwenden:-
Dual-Stack-Konfiguration
-
IPv6
-
ENI Trunking
-
Verwenden einer VPC im Dual-Stack-Modus
Wenn Sie eine VPC im Dual-Stack-Modus verwenden, können Ihre Aufgaben über IPv4 oder IPv6 oder beides kommunizieren. IPv4- und IPv6-Adressen sind unabhängig voneinander. Daher müssen Sie Routing und Sicherheit in Ihrer VPC separat für IPv4 und IPv6 konfigurieren. Weitere Informationen zum Konfigurieren der VPC für den Dual-Stack-Modus finden Sie unter Migrieren zu IPv6 im Amazon-VPC-Benutzerhandbuch.
Wenn Sie Ihre Virtual Private Cloud (VPC) mit einem Internet-Gateway oder einem reinen Outbound-Internet-Gateway konfiguriert haben, können Sie Ihre VPC im Dual-Stack-Modus verwenden. So können Aufgaben, denen eine IPv6-Adresse zugewiesen ist, über ein Internet-Gateway oder ein reines Internet-Gateway auf das Internet zugreifen. NAT-Gateways sind optional. Weitere Informationen finden Sie unter Internet-Gateways und Internet-Gateways nur für Egress im Amazon VPC-Benutzerhandbuch.
Amazon-ECS-Aufgaben werden eine IPv6-Adresse zugewiesen, wenn die folgenden Bedingungen erfüllt sind:
-
Die Amazon-EC2-Linux-Instance, die die Aufgabe hostet, verwendet Version
1.45.0
oder höher des Container-Agenten. Informationen zum Überprüfen der Agent-Version, die Ihre Instance verwendet, und bei Bedarf aktualisieren, finden Sie unter Überprüfen des Amazon-ECS-Container-Agenten. -
Die Kontoeinstellung
dualStackIPv6
ist aktiviert. Weitere Informationen finden Sie unter Greifen Sie mit Kontoeinstellungen auf Amazon ECS-Funktionen zu. -
Ihre Aufgabe verwendet den Netzwerkmodus
awsvpc
. -
Ihre VPC und Ihr Subnetz sind für IPv6 konfiguriert. Die Konfiguration enthält die Netzwerkschnittstellen, die im angegebenen Subnetz erstellt werden. Weitere Informationen zum Konfigurieren der VPC für den Dual-Stack-Modus finden Sie unter Migrieren zu IPv6 und Ändern des IPv6-Adressierungsattributs Ihres Subnetzes im Amazon-VPC-Benutzerhandbuch.