【发布时间】:2021-11-15 01:53:49
【问题描述】:
我创建了一个 ECS 任务定义,并使用 AWS 控制台和 AWS CLI 成功运行。这些任务的多个实例将在一个集群中运行。这些是长期运行的任务(几个月到几年)。
我正在尝试使用 AWS Lambda 函数运行此任务的一个实例,但它不起作用。不会引发错误并且任务不会运行。我已将 AdministratorAccess 添加到 lambda 使用的执行角色。 VPC、子网组和安全组在 Lambda 中配置(选项卡配置 > VPC)
目标是运行任务而不是等待响应(因为这些是长时间运行的任务):
var aws = require('aws-sdk');
var ecs = new aws.ECS();
exports.handler = async (event) => {
var params = {
cluster: "default",
count: 1,
launchType: "FARGATE",
networkConfiguration: {
awsvpcConfiguration: {
assignPublicIp: "ENABLED",
securityGroups: [ "sg-79002b" ],
subnets: [ "subnet-f4b4bf" ]
}
},
taskDefinition: "ecs-test-job-TestTaskDefinition-RgKHGrRzWZOq:1"
};
ecs.runTask(params, function(err) {
if (err) { console.warn('error: ', "Error while starting task: " + err); }
});
};
回复:
Function Logs
START RequestId: 3f89e3d7-b997-4cda-a939-1ad806812c31 Version: $LATEST
END RequestId: 3f89e3d7-b997-4cda-a939-1ad806812c31
REPORT RequestId: 3f89e3d7-b997-4cda-a939-1ad806812c31 Duration: 50.20 ms Billed Duration: 51 ms Memory Size: 1280 MB Max Memory Used: 87 MB Init Duration: 417.57 ms
【问题讨论】:
标签: amazon-web-services aws-lambda amazon-ecs