部署到不同服务器的部署组

时间:2021-01-28 14:04:08

标签: azure-devops azure-devops-deploymentgroups

我对 Azure Devops 非常陌生。使用 dacpac 成功为 Sql 数据库创建 CI/CD 管道。 SQL 服务器位于 AZ VM 上。 作为其中的一部分,我创建了一个部署组,并在 服务器 A 上运行了由 azure 生成的 Power Shell 脚本。 在创建 CD 管道时,错误地将服务器 B 作为部署的目标服务器。 令人惊讶的是它没有失败,部署成功。

我认为每个服务器都应该添加到部署组中。但是不添加服务器 B 我就可以部署。有人可以解释一下幕后情况。

1 个答案:

答案 0 :(得分:1)

部署到服务器 B 成功是因为服务器 B 可以从服务器 A 访问(您可以使用 Invoke-Sqlcmd 从服务器 A 连接到服务器 B 进行测试)。

当您在服务器 A 上创建部署组时,您还在服务器上安装了管道代理。当您在 CD 管道中运行部署组作业时。它将在服务器 A 上的管道代理上执行。由于服务器 B 可以从服务器 A 访问,因此部署将成功。

为了更好地了解情况。假设您在 Azure VM 上创建了一个 self-hosted agent。您可以部署到托管在同一 Azure VM 上的 sql 服务器。以及不同机器上的任何其他 sql 服务器,只要它们可以从安装了自托管代理的机器上访问即可。