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.
Definieren Sie, welche Container-Instances Amazon für Aufgaben ECS verwendet
Eine Aufgabenplatzierungsbeschränkung ist eine Regel für eine Container-Instance, ECS anhand derer Amazon bestimmt, ob die Aufgabe auf der Instance ausgeführt werden darf. Mindestens eine Container-Instance muss der Einschränkung entsprechen. Wenn es keine Instances gibt, die der Einschränkung entsprechen, verbleibt die Aufgabe im Status PENDING
. Wenn Sie einen neuen Service erstellen oder einen vorhandenen aktualisieren, können Sie Einschränkungen bei der Aufgabenplatzierung für die Aufgaben des Services angeben.
Mithilfe des placementConstraint
Parameters können Sie Einschränkungen für die Aufgabenplatzierung in der Servicedefinition, Aufgabendefinition oder Aufgabe angeben.
"placementConstraints": [ { "expression": "The expression that defines the task placement constraints", "type": "The placement constraint type to use" } ]
In der folgenden Tabelle wird beschrieben, wie die Parameter verwendet werden.
Einschränkungstypen | Kann angegeben werden, wann |
---|---|
distinctInstance Platzieren Sie jede aktive Aufgabe auf einer anderen Container-Instance. Amazon ECS schaut sich den gewünschten Status der Aufgaben für die Aufgabenvergabe an. Wenn beispielsweise der gewünschte Status der vorhandenen Aufgabe lautet Wichtig Wir empfehlen Kunden, die für ihre Aufgaben eine starke Isolierung suchen, Fargate zu verwenden. Fargate führt jede Aufgabe in einer Hardware-Virtualisierungsumgebung aus. Dadurch wird sichergestellt, dass sich diese containerisierten Workloads keine Netzwerkschnittstellen, kurzlebigen Fargate-Speicher oder Arbeitsspeicher mit anderen Aufgaben CPU teilen. Weitere Informationen finden Sie unter Sicherheitsüberblick von. AWS Fargate |
|
memberOf Platzierung von Aufgaben auf Container-Instances, die einem Ausdruck entsprechen. |
|
Wenn Sie den memberOf
Einschränkungstyp verwenden, können Sie mithilfe der Cluster-Abfragesprache einen Ausdruck erstellen, der die Container-Instances definiert, in denen Amazon Aufgaben platzieren ECS kann. Mit dem Ausdruck können Sie Ihre Container-Instances nach Attributen gruppieren. Der Ausdruck gehört in den expression
Parameter vonplacementConstraint
.
Attribute der ECS Amazon-Container-Instance
Sie können zu Ihren Container-Instances benutzerdefinierte Metadaten hinzufügen, die als Attribute bezeichnet werden. Jedes Attribut hat einen Namen und einen optionalen Zeichenfolgenwert. Sie können die von Amazon bereitgestellten integrierten Attribute verwenden ECS oder benutzerdefinierte Attribute definieren.
Die folgenden Abschnitte enthalten Beispiele für integrierte, optionale und benutzerdefinierte Attribute.
Integrierte Attribute
Amazon wendet ECS automatisch die folgenden Attribute auf Ihre Container-Instances an.
ecs.ami-id
-
Die ID der AMI zum Starten der Instance verwendeten. Ein Beispielwert für dieses Attribut ist
ami-1234abcd
. ecs.availability-zone
-
Die Availability Zone für die Instance. Ein Beispielwert für dieses Attribut ist
us-east-1a
. ecs.instance-type
-
Den Instance-Typ für die Instance. Ein Beispielwert für dieses Attribut ist
g2.2xlarge
. ecs.os-type
-
Das Betriebssystem für die Instance. Die möglichen Werte für dieses Attribut sind
linux
undwindows
. ecs.os-family
-
Die Betriebssystemversion für die Instance.
Für Linux-Instances ist der gültige Wert
LINUX
. ECSLegt für Windows-Instances den Wert imWINDOWS_SERVER_<
Format fest. Die gültigen Werte sindOS_Release
>_<FULL or CORE
>WINDOWS_SERVER_2022_FULL
,WINDOWS_SERVER_2022_CORE
,WINDOWS_SERVER_20H2_CORE
,WINDOWS_SERVER_2019_FULL
,WINDOWS_SERVER_2019_CORE
undWINDOWS_SERVER_2016_FULL
.Dies ist wichtig für Windows-Container und Windows containers on AWS Fargate weil die Betriebssystemversion jedes Windows-Containers mit der des Hosts übereinstimmen muss. Wenn sich die Windows-Version des Container-Images von der des Hosts unterscheidet, startet der Container nicht. Weitere Informationen finden Sie unter Kompatibilität mit Windows-Containern
auf der Microsoft-Dokumentations-Website. Wenn auf Ihrem Cluster mehrere Windows-Versionen ausgeführt werden, können Sie mithilfe der Platzierungsbeschränkung sicherstellen, dass eine Aufgabe auf einer EC2 Instance platziert wird, die auf derselben Version ausgeführt wird:
memberOf(attribute:ecs.os-family == WINDOWS_SERVER_<OS_Release>_<FULL or CORE>)
. Weitere Informationen finden Sie unter Abrufen von ECS Amazon-optimierten Windows-Metadaten AMI. ecs.cpu-architecture
-
Die CPU Architektur für die Instanz. Beispielwerte für dieses Attribut sind
x86_64
undARM64
. ecs.vpc-id
-
VPCDie Instanz, in der die Instanz gestartet wurde. Ein Beispielwert für dieses Attribut ist
vpc-1234abcd
. ecs.subnet-id
-
Das Subnetz, das die Instance verwendet. Ein Beispielwert für dieses Attribut ist
subnet-1234abcd
.
Optionale Attribute
Amazon ECS kann Ihren Container-Instances die folgenden Attribute hinzufügen.
ecs.awsvpc-trunk-id
-
Wenn dieses Attribut vorhanden ist, verfügt die Instance über eine Trunk-Netzwerkschnittstelle. Weitere Informationen finden Sie unter Zunehmende Netzwerkschnittstellen für Amazon ECS Linux-Container-Instances.
ecs.outpost-arn
-
Wenn dieses Attribut existiert, enthält es den Amazon-Ressourcennamen (ARN) des Outposts. Weitere Informationen finden Sie unter Amazon Elastic Container Service auf AWS Outposts.
ecs.capability.external
-
Wenn dieses Attribut vorhanden ist, wird die Instance als externe Instance identifiziert. Weitere Informationen finden Sie unter ECSAmazon-Cluster für den externen Starttyp.
Custom attributes (Benutzerdefinierte Attribute)
Sie können benutzerdefinierte Attribute für Ihre Container-Instances festlegen. Beispielsweise können Sie ein Attribut mit dem Namen „stack“ und dem Wert „prod“ definieren.
Bei der Angabe benutzerdefinierter Attribute sollte Folgendes berücksichtigt werden.
-
name
muss zwischen 1 und 128 Zeichen sein und Name kann Buchstaben (Groß- und Kleinbuchstaben), Ziffern, Bindestriche, Unterstriche, Schrägstriche, Gegenschrägstriche oder Punkte enthalten. -
value
muss zwischen 1 und 128 Zeichen sein und Buchstaben (Groß- und Kleinbuchstaben), Ziffern, Bindestriche, Unterstriche, Punkte, At-Zeichen (@), Schrägstriche, Gegenschrägstriche, Doppelpunkte oder Leerzeichen enthalten. Der Wert darf keine führenden oder nachgestellten Leerzeichen enthalten.