Azure devops 代理池与并行作业

Azure devops Agent Pools vs Parallel jobs

我正在使用自己的 Azure VM 规模集作为 Azure devops 中的代理池。 VM 规模集由 3 个节点组成。但是,每当 运行 同时有多个作业时,只有一个代理在调度作业而其他代理空闲。

运行并行作业,看来需要单独购买并行作业。有谁知道为代理池使用您自己的 VM 规模集与使用并行作业的 运行 并行作业之间的区别?

即使使用了 VM 规模集(成本更低),我们是否仍需要购买并行作业(每个代理 40 美元)?

您仍然需要购买并行作业。

您可以只将 VM 规模集代理视为您的私有代理池之一,Azure Pipelines 可以根据传入管道作业的数量自动扩大或缩小代理的数量。有关详细信息,请参阅文档 here

Azure virtual machine scale set agents, hereafter referred to as scale set agents, are a form of self-hosted agents that can be autoscaled to meet your demands

下面是Jobs的概念:

A stage contains one or more jobs. Each job runs on an agent. A job represents an execution boundary of a set of steps. All of the steps run together on the same agent

所以我们可以知道规模集代理和并行作业是不同的东西。并行作业将在规模集代理上 运行。并且 Azure Pipelines 会根据并行作业的数量自动缩放代理的数量。

如果您的 azure devops 项目是私有的。您只能获得一份免费工作;所以你仍然需要购买并行作业。有关详细信息,请参阅 here