Registrazione di più gruppi di destinazione con un servizio Amazon ECS - 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à.

Registrazione di più gruppi di destinazione con un servizio Amazon ECS

Il ECS servizio Amazon è in grado di servire traffico proveniente da più load balancer ed esporre più porte con carico bilanciato quando si specificano più gruppi di destinazione in una definizione del servizio.

Per creare un servizio che specifichi più gruppi target, devi creare il servizio utilizzando Amazon ECSAPI, SDK AWS CLI, o un AWS CloudFormation modello. Dopo aver creato il servizio, è possibile visualizzare il servizio e i gruppi di destinazione registrati in esso con la AWS Management Console. Devi utilizzare UpdateService per modificare la configurazione del load balancer di un servizio esistente.

Più gruppi di destinazione possono essere specificati in una definizione del servizio utilizzando il formato seguente. Per la sintassi completa di una definizione di servizio, vedere Modello di definizione del servizio.

"loadBalancers":[ { "targetGroupArn":"arn:aws:elasticloadbalancing:region:123456789012:targetgroup/target_group_name_1/1234567890123456", "containerName":"container_name", "containerPort":container_port }, { "targetGroupArn":"arn:aws:elasticloadbalancing:region:123456789012:targetgroup/target_group_name_2/6543210987654321", "containerName":"container_name", "containerPort":container_port } ]

Considerazioni

Considera quanto segue durante la specifica di più gruppi di destinazione in una definizione del servizio:

  • Per i servizi che utilizzano Application Load Balancer o un Network Load Balancer (load balancer di rete), non è possibile collegare più di cinque gruppi di destinazione a un servizio.

  • La specifica di più gruppi di destinazione in una definizione di servizio è supportata solo nelle seguenti condizioni:

    • Il servizio deve utilizzare un sistema Application Load Balancer o un Network Load Balancer.

    • Il servizio deve utilizzare il tipo di controller di implementazione (ECS) con aggiornamento in sequenza.

  • La specifica di più gruppi di destinazione è supportata per servizi contenenti processi che utilizzano entrambi i tipi Fargate EC2 e Launch.

  • Durante la creazione di un servizio che specifica più gruppi di destinazione, è necessario creare il ruolo ECS collegato ai servizi Amazon. Il ruolo viene creato omettendo il role parametro nelle API richieste o la proprietà in. Role AWS CloudFormation Per ulteriori informazioni, consulta Utilizzo di ruoli collegati ai servizi per Amazon ECS.

Definizioni del servizio di esempio

Di seguito sono riportati alcuni casi d'uso per la specifica di più gruppi di destinazione in una definizione del servizio. Per la sintassi completa di una definizione di servizio, vedere Modello di definizione del servizio.

Disporre di load balancer separati per il traffico interno ed esterno

Nel seguente caso d'uso, un servizio utilizza due load balancer separati, uno per il traffico interno e un secondo per il traffico della connessione Internet, per lo stesso container e porta.

"loadBalancers":[ //Internal ELB { "targetGroupArn":"arn:aws:elasticloadbalancing:region:123456789012:targetgroup/target_group_name_1/1234567890123456", "containerName":"nginx", "containerPort":8080 }, //Internet-facing ELB { "targetGroupArn":"arn:aws:elasticloadbalancing:region:123456789012:targetgroup/target_group_name_2/6543210987654321", "containerName":"nginx", "containerPort":8080 } ]

Esposizione di più porte dallo stesso contenitore

Nel seguente caso d'uso, un servizio utilizza un load balancer, ma espone più porte dallo stesso container. Ad esempio, un contenitore Jenkins potrebbe esporre la porta 8080 per l'interfaccia web Jenkins e la porta 50000 per. API

"loadBalancers":[ { "targetGroupArn":"arn:aws:elasticloadbalancing:region:123456789012:targetgroup/target_group_name_1/1234567890123456", "containerName":"jenkins", "containerPort":8080 }, { "targetGroupArn":"arn:aws:elasticloadbalancing:region:123456789012:targetgroup/target_group_name_2/6543210987654321", "containerName":"jenkins", "containerPort":50000 } ]

Esposizione di porte da più contenitori

Nel seguente caso d'uso, un servizio utilizza un load balancer e due gruppi di destinazione per esporre porte da container separati.

"loadBalancers":[ { "targetGroupArn":"arn:aws:elasticloadbalancing:region:123456789012:targetgroup/target_group_name_1/1234567890123456", "containerName":"webserver", "containerPort":80 }, { "targetGroupArn":"arn:aws:elasticloadbalancing:region:123456789012:targetgroup/target_group_name_2/6543210987654321", "containerName":"database", "containerPort":3306 } ]