jenkins scalable-amazon-ecs 从零开始扩展

jenkins scalable-amazon-ecs scale from zero

在 Jenkins 中有两个类似的插件可用:

两者链接到同一个 Jenkins wiki page

我还没有找到插件的可扩展版本的任何文档,我有以下问题:

是否可以使用此插件将集群中的ECS实例从0(none)添加到1? 我只想在有工作要做的时候才激活ECS实例。

如有任何帮助,我将不胜感激。

我找到了一种解决方法,可以将 ECS 实例的数量从零开始扩展。 我使用以下 shell 代码创建了一个新工作:

result=$(aws ecs list-container-instances --cluster ${cluster-name} | grep -c arn:aws:ecs:${aws-region}) || true
if [ "$result" = '0' ]
    then aws autoscaling set-desired-capacity --auto-scaling-group-name ${asg-name} --desired-capacity 1
else 
    echo "Container already exists"
fi

用实际值

替换变量${cluster-name}, ${aws-region}, ${asg-name}

此作业将 ECS VM 的数量从 0 增加到 1。

可以使用 Cloudwatch 警报和自动缩放策略进行缩减。

尝试卸载这些插件并从自动缩放分支手动编译ecs-slave插件https://github.com/cbamelis/amazon-ecs-plugin