预配部署组
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
部署组是一个部署目标计算机逻辑集,其中每台计算机上都安装了代理。 部署组表示物理环境,例如“开发”、“测试”或“生产”环境。 实际上,部署组就是代理的另一个分组,与代理池非常类似。
部署组仅适用于经典发布管道,不同于部署作业。 部署作业是在 YAML 文件中定义的部署相关步骤的集合,用于完成特定的任务。
利用部署组,你可以:
指定代理的安全性上下文和运行时目标。 当你创建部署组时,你将添加用户,并向他们授予管理、查看和使用组的适当权限。
在进行部署时查看每个服务器的实时日志,并下载所有服务器的日志,以跟踪每台计算机的部署。
使用计算机标记将部署限制到特定的一组目标服务器。
创建部署组
部署组是一组包含部署代理的虚拟机。 部署组的每个 VM 都与 Azure Pipelines 进行交互,以协调部署任务。
从项目中选择“管道”>“部署组”。
选择“添加部署组”。
输入“部署组名称”,然后选择“创建”。 将生成注册脚本。 选择“要注册的目标类型”,然后选择“使用脚本中的个人访问令牌进行身份验证”。 最后,选择“将脚本复制到剪贴板”。
登录到每个目标计算机,并从提升的 PowerShell 命令提示符运行该脚本,以将其注册为目标服务器。 当系统提示输入代理的标记时,请按 Y 并输入将用于筛选服务器子集的一个或多个标记。
设置目标服务器后,该脚本应返回以下消息:Service vstsagent.{organization-name}.{computer-name} started successfully
。
通过你分配给目标服务器的标记,可以将部署限制于部署组作业中的特定服务器。 标记限于 256 个字符,但可以使用的标记数没有限制。
注意
部署池是组织可用(组织范围)的一组目标服务器。 为组织中的项目创建新的部署池时,会自动为每个项目预配相应的部署组。 部署组将具有与部署池相同的目标服务器。 可以通过将鼠标悬停在“部署池”中的省略号 (...) 并选择“更新目标”来手动触发目标服务器的代理版本升级。 有关更多详细信息,请参阅代理版本和升级。
在部署组上设置代理
部署组中的每个目标服务器都需要一个部署代理。 可以通过三种不同的方式在目标服务器上安装代理:
从“部署组”选项卡运行生成的脚本。
如果目标服务器是 Azure VM,你可以通过在每个 VM 上安装 Azure Pipelines 代理扩展来轻松设置服务器。
通过在发布管道中使用 ARM 模板部署任务来动态创建部署组。
通过在部署组页面上选择“升级目标”命令,可将目标服务器上的代理强制升级到最新版本,而无需重新部署它们。
监视部署组的发布状态
当执行发布管道时,可以查看部署组中的每个目标服务器的实时日志。 部署完成后,可下载每个服务器的日志文件来检查部署和调试任何问题。
与其他项目共享部署组
可以与同一组织中的其他项目共享部署组。 按照以下步骤为其他项目预配部署组:
从项目中选择“管道”>“部署组”。
选择部署组,然后选择“管理”。
从列表中选择一个项目,然后选择“保存”。
你现在会注意到,你刚刚添加的项目中有一个新的部署组。
自动部署到新的目标服务器
将新目标服务器添加到部署组时,可配置环境,使其自动将最后一个成功发布部署到新目标。
从发布管道定义,选择部署后图标,然后启用“自动重新部署触发器”。 选择事件和操作,如下所示。
相关文章
- 部署组作业
- 使用部署组部署到 Azure VM
- 为部署组预配代理
- Self-hosted Windows agents(自托管 Windows 代理)
- Self-hosted macOS agents(自托管 macOS 代理)
- Self-hosted Linux agents(自托管 Linux 代理)