我正在尝试使用 cloudwatch 创建计划任务。我正在使用这个页面
我看到的问题是当我正常运行任务然后 aws 询问
- 个人电脑
- 子网
- 发射类型
但是当我使用 cloudwatch 目标时,它不会要求 vpc、子网等。这是为什么?
我正在尝试使用 cloudwatch 创建计划任务。我正在使用这个页面
我看到的问题是当我正常运行任务然后 aws 询问
但是当我使用 cloudwatch 目标时,它不会要求 vpc、子网等。这是为什么?
CloudFormation 尚未更新以适应某些 Fargate 功能。如果您在尝试从 CloudFormation 部署 ECS 任务时遇到错误,请尝试改用命令行界面 ( aws events put-target ),它允许您添加一个目标,其中包含启动类型和网络配置所需的 ECS 参数。
以下是我如何配置我的 ECS 任务以从 CLI 而不是
CloudFormation 部署的示例: 1. 将 vpc/subnet 配置添加到变量,NETWORK_CONFIGURATION
:
NETWORK_CONFIGURATION='{"awsvpcConfiguration":{"AssignPublicIp":"ENABLED","SecurityGroups": \["'${AWS_NETWORKCONFIG_SECURITY_GROUP}'"],"Subnets":["'${AWS_NETWORKCONFIG_SUBNET}'"]}}'
aws events put-targets \
--rule events-rule--${TASK_NAME} \
--targets '{"Arn":"arn:aws:ecs:'${AWS_REGION}':'${AWS_ACCOUNT_ID}':cluster/ecs-cluster-1","EcsParameters":{"LaunchType":"FARGATE","NetworkConfiguration":'${NETWORK_CONFIGURATION}',"TaskCount": 1,"TaskDefinitionArn": "arn:aws:ecs:'${AWS_REGION}':'${AWS_ACCOUNT_ID}':task-definition/ecs-task-'${TASK_NAME}'"},"Id": "ecs-targets-'${TASK_NAME}'","RoleArn": "arn:aws:iam::'${AWS_ACCOUNT_ID}':role/ecsEventsRole"}' \
;