Добавить целевую группу в задачу ECS Fargate, используя boto3 - PullRequest
0 голосов
/ 11 октября 2019

У меня есть задача Fargate, которая вызывается из лямбда-функции. У меня также есть балансировщик нагрузки, который настроен на определенную целевую группу, скажем, tg-x . Я использую boto3 для запуска вышеупомянутой задачи. Однако я не пользуюсь сервисом, так как мне нужно, чтобы эта задача выполнялась только вручную. Можно ли в любом случае добавить целевую группу к этой задаче, как в службе?

Мой код:

def lambda_handler(event,context):
    client = boto3.client('ecs')
    response = client.run_task(
        cluster='oops-dev', # name of the cluster
        launchType = 'FARGATE',
        taskDefinition='oops-dev-oops-oops:oops'
        count = 1,
        platformVersion='LATEST',
        networkConfiguration={
            'awsvpcConfiguration': {
                'subnets': [
                    'subnet-oops',
                    'subnet-oops',
                    'subnet-oops'
                ],
                'securityGroups': [
                    'sg-oops'
                ],
                'assignPublicIp': 'ENABLED'
            }
    })

    return str(response)

Я проверил boto3 docs , кака также документация AWS , но безрезультатно. Я также заметил, что даже в веб-интерфейсе это невозможно сделать.

Заранее спасибо.

1 Ответ

1 голос
/ 11 октября 2019

run_task для чего-то, что выполняется до завершения и завершается. Для задачи ECS, которая должна работать и обслуживать что-то вроде веб-приложения за балансировщиком нагрузки, вам нужно использовать create_service и передать соответствующие loadBalancers настройки.

...