如何优雅地实施持续交付部署
持续交付部署类型 下面,我们就四种主要的部署类型,来聊一聊它们各自的优缺点。 服务内最小部署 应用程序滚动部署 蓝/绿部署 A / B测试 这四种部署类型又可分为两个子类别:应用程序和基础架构部署。 服务内最小部署 通过这种方法,我们指定了在更新剩余百分比的同时保持在服务状态的应用程序中的最小实例数,因此可以部署到尽可能多的目标。重复此过程,直到所有服务器都更新为新版本。 例如:如果我们有5个容器,每个容器运行我们当前的应用程序A,那么我们设置我们的策略以保持继续提供服务的数量最小为2。我们使3个服务器离线,以将它们更新到我们的新版本B。一旦这些完成并正常对外提供服务,我们就可以更新剩下的2个了。 缺点 这个过程存在多个阶段,所以需要以Swarm之外的监控和健康检查的形式进行支持 对于基础设施发生变化的情况下,效果不好 对正在运行的服务器进行更改——万一发生故障,恢复时间可能会很长 优点 组件更新少,意味着可测性的提高;在正常提供服务的过程中进行应用程序和代码更改 无需停服务,没有额外的基础设施成本 这个过程通常比滚动部署更快(见下面) 滚动部署 考虑将滚动部署作为最小服务内容的扩展。...
