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à.
Aumento delle interfacce di rete delle istanze di container Linux di Amazon ECS
Nota
Questa funzione non è disponibile su Fargate.
Ogni attività che utilizza la modalità di rete awsvpc riceve una propria interfaccia (ENI) di rete elastica, che è collegata all'istanza di container che la ospita. Esiste un limite predefinito al numero di interfacce di rete che possono essere collegate a un' EC2 istanza Amazon e l'interfaccia di rete principale conta come una. Ad esempio, per impostazione predefinita, a un'c5.largeistanza possono essere ENIs collegate fino a tre istanze. L'interfaccia di rete principale per l'istanza conta come una sola, quindi è possibile collegarne altre due ENIs all'istanza. Poiché ogni attività che utilizza la modalità di rete awsvpc richiede un'ENI, in genere puoi eseguire solo due attività su questo tipo di istanza.
Amazon ECS supporta il lancio di istanze di container con maggiore ENI densità utilizzando i tipi di istanze Amazon EC2 supportati. Quando utilizzi questi tipi di istanze e attivi l'impostazione dell'awsvpcTrunkingaccount, ne ENIs sono disponibili altre sulle istanze di container appena lanciate. Questa configurazione consente di posizionare più attività su ciascuna istanza di container. Per usare la console per attivare la funzionalità, consulta Modifica delle impostazioni dell'account Amazon ECS. Per utilizzare l'opzione AWS CLI per attivare la funzionalità, consultaGestione delle impostazioni dell'account Amazon ECS tramite AWS CLI.
Ad esempio, un'istanza c5.large con awsvpcTrunking ha un limite ENI aumentato di dodici. L'istanza di container avrà un'interfaccia di rete primaria e Amazon ECS crea e collega un'interfaccia di rete "trunk" all'istanza di container. Pertanto, questa configurazione consente di avviare dieci attività sull'istanza di container anziché le due attività correnti.
L'interfaccia di rete trunk è completamente gestita da Amazon ECS e viene eliminata quando termini o annulli la registrazione dell'istanza di container dal cluster. Per ulteriori informazioni, consulta Opzioni di task networking di Amazon ECS per EC2.
Considerazioni
Tieni in considerazione le seguenti informazioni quando usi la funzionalità di trunking ENI.
-
Solo le varianti Linux dell'AMI ottimizzata per Amazon ECS o altre varianti Amazon Linux con versione
1.28.1o successiva dell'agente del container e versione1.28.1-2o successiva del pacchetto ecs-init, supportano i limiti ENI aumentati. Se utilizzi la variante Linux più recente dell'AMI ottimizzata per Amazon ECS, questi requisiti saranno soddisfatti. I container Windows non sono al momento supportati. -
Solo le nuove EC2 istanze Amazon lanciate dopo l'attivazione
awsvpcTrunkingricevono i ENI limiti aumentati e l'interfaccia di rete trunk. In precedenza, le istanze avviate non ricevevano queste caratteristiche, a prescindere dalle operazioni eseguite. -
EC2 Le istanze Amazon devono avere le richieste IPv4 DNS basate sulle risorse disattivate. Per disabilitare questa opzione, deseleziona l'opzione Abilita richieste DNS basate su risorse IPV4 (A record) quando crei una nuova istanza nella console Amazon. EC2 Per disabilitare questa opzione usando il AWS CLI, usa il seguente comando.
aws ec2 modify-private-dns-name-options --instance-idi-xxxxxxx--no-enable-resource-name-dns-a-record --no-dry-run -
EC2 Le istanze Amazon in sottoreti condivise non sono supportate. Se vengono utilizzate, non riescono a eseguire la registrazione a un cluster.
-
Le tue attività devono utilizzare la modalità di
awsvpcrete e il. EC2 Le attività che usano Fargate hanno sempre ricevuto un'ENI dedicata a prescindere da quante vengono avviate, pertanto questa funzionalità non è necessaria. -
Le attività devono essere avviate nello stesso Amazon VPC dell'istanza di container. Le tue attività non verranno avviate con un errore di attributo se non sono all'interno dello stesso VPC.
-
Quando si avvia una nuova istanza di container, l'istanza effettua la transizione a uno stato
REGISTERINGmentre viene eseguito il provisioning dell'interfaccia di rete elastica trunk per l'istanza. Se la registrazione ha esito negativo, l'istanza esegue la transizione a uno statoREGISTRATION_FAILED. È possibile risolvere i problemi relativi a una registrazione non riuscita descrivendo l'istanza di container per visualizzare il campostatusReasonche descrive il motivo dell'errore. L'istanza di container può quindi essere annullata manualmente o terminata. Una volta annullata la registrazione o terminata l'istanza di container, Amazon ECS eliminerà l'ENI trunk.Nota
Amazon ECS emette eventi di modifica dello stato dell'istanza di container che è possibile monitorare per le istanze che passano a uno stato
REGISTRATION_FAILED. Per ulteriori informazioni, consulta Eventi di modifica dello stato delle istanze di container di Amazon ECS. -
Al termine dell'istanza di container, l'istanza esegue la transizione a uno stato
DEREGISTERINGmentre viene annullato il provisioning dell'interfaccia di rete elastica trunk. L'istanza quindi esegue la transizione a uno statoINACTIVE. -
Se un'istanza di container in una sottorete pubblica con limiti ENI aumentati viene interrotta e quindi riavviata, l'istanza perde il suo indirizzo IP pubblico e l'agente del container perde la sua connessione.
-
Quando abiliti
awsvpcTrunking, le istanze di container ricevono un'ENI aggiuntiva che utilizza il gruppo di sicurezza predefinito del VPC ed è gestita da Amazon ECS.Un VPC di default include una sottorete pubblica in ogni zona di disponibilità, un gateway Internet e impostazioni per abilitare la risoluzione DNS. La sottorete è pubblica perché la tabella di routing principale invia il traffico della sottorete destinato a Internet al gateway Internet. Puoi rendere una sottorete predefinita privata rimuovendo la route dalla destinazione 0.0.0.0/0 all'Internet Gateway. Tuttavia, in questo caso, nessuna istanza di container in esecuzione in tale sottorete può accedere a Internet. Puoi aggiungere o eliminare le regole dei gruppi di sicurezza per controllare il traffico in entrata e in uscita dalle sottoreti. Per ulteriori informazioni, consulta Regole del gruppo di sicurezza nella Guida per l'utente del Amazon Virtual Private Cloud.
Prerequisiti
Prima di avviare un'istanza di container con limiti ENI aumentati, è necessario completare i seguenti requisiti preliminari.
-
Il ruolo collegato ai servizi per Amazon ECS deve essere creato. Il ruolo collegato al servizio Amazon ECS fornisce ad Amazon ECS le autorizzazioni per effettuare chiamate ad altri AWS servizi per tuo conto. Questo ruolo viene creato automaticamente quando crei un cluster oppure quando crei o aggiorni un servizio nella Console di gestione AWS. Per ulteriori informazioni, consulta Uso di ruoli collegati ai servizi per Amazon ECS. Puoi anche creare il ruolo collegato al servizio con il seguente comando. AWS CLI
aws iam create-service-linked-role --aws-service-name ecs.amazonaws.com -
Il ruolo IAM dell'account o dell'istanza di container deve abilitare le impostazioni dell'account
awsvpcTrunking. Consigliamo di creare 2 ruoli dell'istanza di container (ecsInstanceRole). È quindi possibile abilitare l'impostazione dell'accountawsvpcTrunkingper un ruolo e usare quel ruolo per attività che richiedono il trunking ENI. Per ulteriori informazioni sulle istanze di container, consulta Ruolo IAM delle istanze di container Amazon ECS.
Una volta soddisfatti i prerequisiti, puoi avviare una nuova istanza di container utilizzando uno dei tipi di EC2 istanza Amazon supportati e l'istanza avrà i ENI limiti maggiori. Per una lista di tipi di istanze supportate, consulta Istanze supportate per un potenziamento delle interfacce di rete dei container Amazon ECS. La versione dell'istanza di container per l'agente del container deve essere 1.28.1 o successiva e la versione del pacchetto ecs-init deve essere 1.28.1-2 o successiva. Se utilizzi la variante Linux più recente dell'AMI ottimizzata per Amazon ECS, questi requisiti saranno soddisfatti. Per ulteriori informazioni, consulta Avvio di un'istanza di container Linux di Amazon ECS.
Importante
EC2 Le istanze Amazon devono avere le richieste IPv4 DNS basate sulle risorse disattivate. Per disabilitare questa opzione, assicurati che l'opzione Abilita richieste DNS basate su risorse IPV4 (A record) sia deselezionata quando crei una nuova istanza utilizzando la console Amazon. EC2 Per disabilitare questa opzione utilizzando il AWS CLI, usa il seguente comando.
aws ec2 modify-private-dns-name-options --instance-idi-xxxxxxx--no-enable-resource-name-dns-a-record --no-dry-run
Per visualizzare le istanze del contenitore con ENI limiti maggiori con il AWS CLI
Ogni istanza di container dispone di un'interfaccia di rete predefinita, nota anche come interfaccia di rete trunk. Utilizza il comando seguente per visualizzare un elenco di istanze di container con limiti ENI aumentati eseguendo una query dell'attributo ecs.awsvpc-trunk-id, che indica che dispone di un'interfaccia di rete trunk.
-
list-attributes (AWS CLI)
aws ecs list-attributes \ --target-type container-instance \ --attribute-name ecs.awsvpc-trunk-id \ --clustercluster_name\ --regionus-east-1 -
Get- ECSAttribute List ()AWS Tools for Windows PowerShell
Get-ECSAttributeList -TargetType container-instance -AttributeName ecs.awsvpc-trunk-id -Regionus-east-1