Сопоставление портов AWS ECS Fargate

У меня есть кластер ECS. В нем есть два определения задач, и каждое определение задачи имеет только один контейнер. Здесь мы используем модель Fargate ECS с типом сети как awsvpc.

Определение задачи 1: запрос-Conatiner Определение задачи 2: Send-Conatiner

Теперь есть 2 сервиса для каждого из двух определений задач, приведенных выше.

И Query-Conatiner, и Send-Conatiner отображаются на порт 8080 хоста.

Не будет ли конфликта, поскольку оба порта привязаны к 8080?


person AWS_Lernar    schedule 25.11.2019    source источник


Ответы (1)


При использовании awsvpc каждому контейнеру назначаются разные эластичные сетевые интерфейсы (ENI), поэтому каждый контейнер будет иметь другой IP-адрес, следовательно, конфликт портов отсутствует (например, Query-Container находится на 10.0.0.1:8080, Send-Container находится на 10.0). 0,2: 8080).

https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html

person Ahmed Agiza    schedule 25.11.2019
comment
Этот IP-адрес отличается от IP-адреса хоста (EC2), на котором работает контейнер? - person AWS_Lernar; 25.11.2019
comment
Да, это другой сетевой интерфейс. Опять же, это только при использовании сетевого режима awsvpc. И поскольку вы используете fargate, для вас все равно нет видимого экземпляра хоста EC2. - person Ahmed Agiza; 25.11.2019
comment
Да, в фаргейте нет видимости EC2. Но просто интересно, хочу ли я завтра запустить 4 реплики задачи 1 для автомасштабирования, а затем в бэкэнде, если она запускает пару задач на том же EC2, то также те же результаты? - person AWS_Lernar; 25.11.2019
comment
При использовании Fargate вам не нужно беспокоиться ни о чем, связанном с EC2, но в целом, даже если вы используете awsvpc в ECS с поддержкой EC2, каждый контейнер получает другой ENI, и все они отличаются от ENI экземпляра хоста. - person Ahmed Agiza; 25.11.2019
comment
Итак, в случае ECS-EC2, если мне нужен балансировщик нагрузки приложений, тогда в целевой группе мне нужно добавить ENI IP в качестве экземпляра? - person AWS_Lernar; 25.11.2019