Azure DevOps中的代理作业和部署组作业之间有什么区别?

时间:2019-10-30 15:50:41

标签: azure-devops

Azure DevOps中的代理作业和部署组作业之间有什么区别?创建一个或另一个的原因是什么?

1 个答案:

答案 0 :(得分:0)

  

代理作业和部署组之间有什么区别   在Azure DevOps中工作?

代理人职位:

在代理上执行步骤 ,该步骤在 agent pool 中。

部署组作业:

deployment group 中在计算机上运行

这些是它们中的definition。您可以看到,它们之间的根本区别在于运行作业时的目标是不同的。

对于代理作业,它一次只能在一个目标上运行(除非设置为并行以一次在多个目标上运行,但并行实质上是多个作业)。部署组作业是,因为部署组是将多台计算机绑定到一个组中,所以它可以一次在多台计算机上运行作业。

在使用场景中,代理作业可以在构建和发布管道中使用。但是对于 Deployment Agent作业,它只能在Release管道中用于应用程序/项目的部署。


  

创建一个或另一个的原因是什么?

在构建管道中,毫无疑问,您只能使用 Agent作业(或无代理)作业。

我认为您关心的应该是Release管道中的用法。如上所述,这些不同的作业都可以在Release管道中使用,并且都可以用于已部署的项目。

但是在特定用途方面,这取决于您将使用的任务和要部署到的目标服务器的数量

代理人职位:

如果部署目标服务器的数量少于5个对象,并且需要同时部署到多台计算机,则可以为代理作业设置并行作业。代理作业可能比部署组作业花费更长的时间。但是因为部署的目标数量不是太多,所以差异并不明显。

部署组作业:

对于中型和大型公司,Deployment目标对象通常超过10个,甚至100个。使用Deployment group作业是最合适的,因为它可以在一个作业中部署在不同的计算机上。

在发行版中,如果要部署到多个目标,建议您使用Deployment group作业:

enter image description here