按比例缩小kubernetes作业,但在完成之前不要删除pod

时间:2018-08-06 03:35:55

标签: kubernetes azure-devops azure-pipelines azure-pipelines-release-pipeline

是否有可能缩小kubernetes作业的并行度值,但将任何正在运行的作业保留到完成运行。

我有一个特定的场景,我在容器中运行vsts构建代理,并且需要以始终始终有一个代理可用的方式设计解决方案。扩展很容易,因为这可以在每次构建开始时就完成,但是因为我需要在Pod完成之前清理代理,所以我无法在构建结束时以相同的方式进行缩减。如果有一种方法可以设置目标并行度,但在完成之前不删除任何吊舱,那将是完美的选择,但对我而言,通过任何其他方式来实现这一目标或指向何处寻找指针都是不错的选择。

1 个答案:

答案 0 :(得分:0)

我猜想您的目标不是在Kubernetes框外实现的,因为在Parallel Jobs实现中,完成后有一个Pod是可行的。通常,为了指定Job场景,我们使用诸如.spec.completions.spec.parallelism之类的条件,但是仅针对Pod的完成和并行执行进行跟踪。

看看此ArticleGitHub Project,了解如何在Kubernetes集群上使用VSTS来部署Helm代理。