我正在 Azure DevOps 中重新创建我们非常复杂的部署过程。目前,我们的实时环境由负载均衡器后面的 4 个虚拟机组成。
我考虑的策略是一种蓝绿部署,只是我每次都将在一半(2) 的虚拟机上工作。
这不像滚动部署,因为不会有 2 个版本同时运行。
一旦我完成前半部分的部署并确保它已启动并运行,我将连接它并立即断开另一半的连接以将新版本也部署到它。
因为不幸的是,IP 是硬编码的,所以我现在不能按照本书(在新版本中部署一组完整的独立虚拟机)做蓝绿。仅在部署时使用 2 个虚拟机,实时环境就可以了。
我的问题是如何在 Azure DevOps 中为这种解决方案配置发布管道(我使用 GUI 版本,而不是 YAML)?(这些是阶段)
DbConversionDev > FirstHalfDev > SecondHalfDev > DbConversionQA > FirstHalfQA > SecondHalfQA > DbConversionProd > FirstHalfProd > SecondHalfProd
也许数据库转换阶段可以并行。
它看起来很复杂,很难维护。有什么建议么?提前致谢 :)