Как создать сервис aws fargate с несколькими балансировщиками нагрузки

Мы пытаемся создать службу с указанным определением задачи, используя команду create-service из aws ecs cli. Наше определение задачи - люди-облако: 27.

 aws ecs create-service --cluster cloud1 --service-name docker-service --task-definition people-cloud:27 
--load-balancers targetGroupArn=arn:aws:elasticloadbalancing:ap-south-1:2******5555:targetgroup/ecsCloud/ee7f4c280b1672aa,containerName=app,containerPort=8080,targetGroupArn=arn:aws:elasticloadbalancing:ap-south-1:2******5555:targetgroup/ecsServer/54fcbf7052957660,containerName=app2,containerPort=2990 
--launch-type FARGATE --client-token AMOEBA@123 --desired-count 1 --network-configuration "awsvpcConfiguration={subnets=[subnet-0e11****f9e4218,subnet-0er****ufgrger],securityGroups=[sg-******5b***b3]}"

Команда упоминает, что может принимать несколько балансировщиков нагрузки в качестве входных данных, но когда мы предоставляем их в формате, разделенном запятыми, учитывается только последний из них.

В этом случае в выходных данных публикуется только тот, который прикреплен к контейнеру app2. Нужна помощь в том, как предоставить информацию о нескольких балансировщиках нагрузки в команде cli.


person GJoshi    schedule 30.12.2019    source источник
comment
вы создаете несколько балансировщиков нагрузки? или несколько целевых групп, которые будут обслуживаться одним балансировщиком нагрузки   -  person Arun K    schedule 30.12.2019
comment
несколько целевых групп с использованием одного балансировщика нагрузки   -  person GJoshi    schedule 30.12.2019


Ответы (2)


Попробуйте без запятой. В документации указано, что --load-balancers является типом list

aws ecs create-service --cluster cloud1 --service-name docker-service --task-definition people-cloud:27 
--load-balancers targetGroupArn=arn:aws:elasticloadbalancing:ap-south-1:2******5555:targetgroup/ecsCloud/ee7f4c280b1672aa,containerName=app,containerPort=8080 targetGroupArn=arn:aws:elasticloadbalancing:ap-south-1:2******5555:targetgroup/ecsServer/54fcbf7052957660,containerName=app2,containerPort=2990 
--launch-type FARGATE --client-token AMOEBA@123 --desired-count 1 --network-configuration "awsvpcConfiguration={subnets=[subnet-0e11****f9e4218,subnet-0er****ufgrger],securityGroups=[sg-******5b***b3]}"

К вашему сведению: обратитесь к документации по регистрации нескольких целевых групп

person Haran    schedule 02.01.2020
comment
Вы человек. !! - person Mithun; 29.05.2021

Вы можете добавить JSON в любую команду интерфейса командной строки AWS.

aws ecs create-service --cluster mycluster \
    --cli-input-json '{"loadBalancers": [
    {
        "targetGroupArn": "my_target1_arn",
        "containerName": "mycontainer",
        "containerPort": 8080
    },
    {
        "targetGroupArn": "my_target2_arn",
        "containerName": "mycontainer",
        "containerPort": 80
    }
    ]}' \
    --service-name myservice \
    ...
person ANDgineer    schedule 08.03.2021