【问题标题】:Jenkins AWS Spot fleet plugin doesn't automatically scale spot instancesJenkins AWS Spot 队列插件不会自动扩展 Spot 实例
【发布时间】:2019-03-08 05:00:47
【问题描述】:

根据本文https://jenkins.io/blog/2016/06/10/save-costs-with-ec2-spot-fleet/,计划使用 EC2 Spot 实例/队列作为我们的 jenkins 从属解决方案。

例外
如果 Spot 实例节点在指定的空闲时间(我已配置为 5 分钟)内保持空闲状态,则 Jenkins 会释放节点,并且我的 Spot 队列节点将自动缩减。

实际
我的 Spot 实例仍在运行数天。另外,请注意,当我有更多待处理的作业时,Jenkins 不会自动扩展我的 Spot 队列以添加更多节点。

自动放大/缩小应该由 aws 服务自动触发吗?还是应该由詹金斯插件触发?

配置
詹金斯版本:2.121.2-1.1
EC2 Fleet Jenkins 插件版本:1.1.7
Spot 实例配置:

  • 请求类型:请求和维护
  • 目标容量:1

Spot 车队插件配置:

  • 按比例缩小前的最大空闲分钟数:5
  • 最小集群大小:0
  • 最大集群大小:3

任何帮助或领导将不胜感激。

【问题讨论】:

  • 嗯插件可能被破坏了,最好的办法是在作业运行后添加一个后触发关闭调用。
  • 我建议你尝试最新版本的插件 1.1.9 我看到很多关于缩减和终止的提交。
  • 缩小/放大由插件完成,EC2 Fleet 负责维护所需数量的节点。
  • @Faisal 有解决办法吗?

标签: amazon-web-services jenkins amazon-ec2


【解决方案1】:

我遇到了同样的问题,通过查看 Jenkins 的日志,我看到它试图终止实例,但被 AWS 拒绝。

因此,我在 AWS Cloudtrail 中检查了 Jenkins 尝试过的所有操作,但出现了错误。

为了让插件扩展您的 Spot Fleet,请检查您的 AWS EC2 Spot Fleet 插件是否在适当的条件下具有以下权限:

ec2:TerminateInstances
ec2:ModifySpotFleetRequest

就我而言,政策中的条件格式不正确且不起作用。

【讨论】:

  • 如何检查EC2 Spot Fleet插件是否有上述权限,如果没有则设置?
猜你喜欢
  • 2020-05-12
  • 1970-01-01
  • 1970-01-01
  • 2020-07-12
  • 2016-10-04
  • 2017-08-30
  • 2018-05-02
  • 1970-01-01
  • 2014-10-06
相关资源
最近更新 更多