我有 4 个目标环境 Dev、QA、UAT 和 PROD 每个环境有 3 个 Azure VM、Web、API 和数据库 我应该创建
- 4 个部署组开发、QA、UAT 和 PROD,并在这 4 个部署组中的每一个中添加 3 个目标,并将这些目标标记为 Web、API 和数据库?
- 或者创建 3 个部署组 Web、API 和数据库,并在每个组中添加 4 个目标,标记为 Dev、QA、UAT 和 PROD?
- 或者创建 4 个环境(Dev、QA、UAT 和 PROD)并在每个环境中添加 3 个资源。
注意:
- 更不用说,每个环境都会有不同的连接字符串
- 如果我已将一台虚拟机添加为部署组中的目标,则无法将其添加为环境中的资源
- 我想使用相同的发布管道在获得批准的情况下分阶段部署到 Dev --> QA --> UAT --> PROD。基本上构建一次并部署到多个环境。
最佳答案
您无法使用具有经典发布管道的环境。所以选项3已经出局了。但是,如果您使用 YAML 管道来部署应用程序,则所描述的选项将有效。
在选项 1 和 2 中,您应该选择第一个,因为它出现错误的空间较小,并且生产环境得到更好的保护。您还可以使用 12 个组(每个组合一组),但额外的努力可能不值得。
这也遵循 Microsoft recommendation .
Deployment groups represent the physical environments; for example, "Dev", "Test", or "Production" environment.
[...]
Enable you to use machine tags to limit deployment to specific sets of target servers.
关于azure - 在 Azure 部署组中对服务器进行分组的最佳策略是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74185509/