Definisci quali istanze di container Amazon ECS utilizza per le attività - Amazon Elastic Container Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Definisci quali istanze di container Amazon ECS utilizza per le attività

Un vincolo di posizionamento delle attività è una regola relativa a un'istanza di contenitore che Amazon ECS utilizza per determinare se l'attività può essere eseguita sull'istanza. Almeno un'istanza di container deve corrispondere al vincolo. Se non sono presenti istanze corrispondenti al vincolo, l'attività rimane in uno stato PENDING. Quando crei un nuovo servizio o ne aggiorni uno esistente, puoi specificare i vincoli di posizionamento delle attività per le attività del servizio.

Puoi specificare i vincoli di posizionamento delle attività nella definizione del servizio, nella definizione dell'attività o nell'attività utilizzando il parametro. placementConstraint

"placementConstraints": [ { "expression": "The expression that defines the task placement constraints", "type": "The placement constraint type to use" } ]

La tabella seguente descrive come utilizzare i parametri.

Constraint type (Tipo di vincolo) Può essere specificato quando
distinctInstance

Posizionamento di ciascuna attività in una istanza di container differente.

Importante

Consigliamo ai clienti che cercano un forte isolamento per le proprie attività di utilizzare Fargate. Fargate esegue ogni attività in un ambiente di virtualizzazione hardware. Ciò garantisce che questi carichi di lavoro containerizzati non condividano interfacce di rete, storage temporaneo Fargate o memoria con altre attività. CPU Per ulteriori informazioni, vedere Panoramica sulla sicurezza di. AWS Fargate

memberOf

Posizionamento delle attività in istanze di container che soddisfano un'espressione.

Quando utilizzi il tipo di memberOf vincolo, puoi creare un'espressione utilizzando il linguaggio di query del cluster che definisce le istanze del contenitore in cui Amazon ECS può collocare le attività. L'espressione è un modo per raggruppare le istanze del contenitore in base agli attributi. L'espressione rientra nel expression parametro di. placementConstraint

Attributi dell'istanza del ECS contenitore Amazon

Puoi aggiungere metadati personalizzati alle istanze di container, note come attributi. Ogni attributo ha un nome e un valore di stringa facoltativo. Puoi utilizzare gli attributi integrati forniti da Amazon ECS o definire attributi personalizzati.

Le sezioni seguenti contengono attributi incorporati, facoltativi e personalizzati di esempio.

Attributi integrati

Amazon applica ECS automaticamente i seguenti attributi alle tue istanze di container.

ecs.ami-id

L'ID AMI utilizzato per avviare l'istanza. Un valore di esempio per questo attributo è ami-1234abcd.

ecs.availability-zone

La zona di disponibilità dell'istanza. Un valore di esempio per questo attributo è us-east-1a.

ecs.instance-type

Il tipo di istanza dell'istanza. Un valore di esempio per questo attributo è g2.2xlarge.

ecs.os-type

Il sistema operativo dell'istanza. I valori possibili per questo attributo sono linux e windows.

ecs.os-family

La versione del sistema operativo dell'istanza.

Per le istanze Linux, il valore valido è LINUX. Per le istanze Windows, ECS imposta il valore nel WINDOWS_SERVER_<OS_Release>_<FULL or CORE> formato. I valori validi sono WINDOWS_SERVER_2022_FULL, WINDOWS_SERVER_2022_CORE, WINDOWS_SERVER_20H2_CORE, WINDOWS_SERVER_2019_FULL, WINDOWS_SERVER_2019_CORE e WINDOWS_SERVER_2016_FULL.

Questo è importante per i contenitori Windows e Windows containers on AWS Fargate perché la versione del sistema operativo di ogni contenitore Windows deve corrispondere a quella dell'host. Se la versione Windows dell'immagine del container è diversa da quella dell'host, il container non si avvia. Per ulteriori informazioni, consulta Compatibilità con la versione del container Windows sul sito Web della documentazione Microsoft.

Se il tuo cluster esegue più versioni di Windows, puoi assicurarti che un'attività venga inserita su un'EC2istanza in esecuzione sulla stessa versione utilizzando il vincolo di posizionamento:. memberOf(attribute:ecs.os-family == WINDOWS_SERVER_<OS_Release>_<FULL or CORE>) Per ulteriori informazioni, consulta Recupero di metadati Windows ottimizzati ECS per Amazon AMI.

ecs.cpu-architecture

L'CPUarchitettura dell'istanza. I valori di esempio per questo attributo sono x86_64 e ARM64.

ecs.vpc-id

VPCL'istanza in cui è stata lanciata l'istanza. Un valore di esempio per questo attributo è vpc-1234abcd.

ecs.subnet-id

La sottorete utilizzata dall'istanza. Un valore di esempio per questo attributo è subnet-1234abcd.

Attributi facoltativi

Amazon ECS può aggiungere i seguenti attributi alle tue istanze di container.

ecs.awsvpc-trunk-id

Se questo attributo esiste, l'istanza dispone di un'interfaccia di rete trunk. Per ulteriori informazioni, consulta Aumento delle interfacce di rete delle istanze di container Amazon ECS Linux.

ecs.outpost-arn

Se questo attributo esiste, contiene l'Amazon Resource Name (ARN) dell'Outpost. Per ulteriori informazioni, consulta Amazon Elastic Container Service su AWS Outposts.

ecs.capability.external

Se questo attributo esiste, l'istanza viene identificata come un'istanza esterna. Per ulteriori informazioni, consulta ECSCluster Amazon per il tipo di lancio esterno.

Attributi personalizzati

Puoi applicare attributi personalizzati alle istanze di container. Ad esempio, puoi definire un attributo con il nome "stack" e un valore di "prod".

Quando si specificano attributi personalizzati, è necessario considerare quanto segue.

  • Il name può contenere un massimo di 128 caratteri e può contenere lettere (maiuscole e minuscole), numeri, trattini, caratteri di sottolineatura, barre, barre inverse o punti.

  • Il value può contenere un massimo di 128 caratteri e può contenere lettere (maiuscole e minuscole), numeri, trattini, caratteri di sottolineatura, punti, chiocciola (@), barre, barre inverse, due punti o spazi. Il valore non può contenere spazi iniziali o finali.