您当前的位置:首页 >  快讯  > 正文
什么是蓝绿软件交付部署?|今日看点
来源:东方资讯     时间:2023-04-24 11:26:57

蓝绿部署模型是一种基于维护两个独立应用程序环境的软件交付发布策略。运行当前生产版本软件的现有生产环境称为蓝色环境,而新版本软件部署到绿色环境。作为新版本软件测试和验证的一部分,应用程序流量逐渐重新路由到绿色环境。如果未发现任何问题,则绿色环境将成为新的蓝色环境。之前的蓝色环境可以拿下来,为下一次发布建立新的绿色环境。

为什么蓝绿部署有用?


(资料图片仅供参考)

实施蓝绿策略的主要好处是1)应用程序停机时间最少或为零,以及2)在将用户切换到新软件版本或在出现不可预见的问题时回滚版本时对最终用户没有负面影响新版本或部署。

实现蓝绿部署所需的概念和组件包括但不限于负载均衡器、路由规则和容器编排平台(如Kubernetes)。

蓝绿部署的工作原理

如图所示,我们假设版本1是应用程序的当前版本,我们想要移动到新的更新版本1.1。版本1称为蓝色环境,版本1.1称为绿色环境。

两个环境切换流量的过程

现在我们有两个应用程序实例,分别名为blue和green,我们希望用户访问新的green(v1.1)实例而不是旧的blue实例。为此,我们通常使用负载均衡器而不是DNS记录交换,因为DNS传播不是即时的。

通过使用负载均衡器和路由器,无需更改DNS记录,因为负载均衡器引用相同的DNS记录,但会将新流量路由到绿色环境。这使管理员可以完全控制用户访问,这一点很重要,因为它可以在绿色实例出现故障时将用户快速切换回版本1(蓝色实例)。由于切换的速度,大多数用户不会注意到他们现在正在访问更新版本的服务或应用程序——或者他们已经回滚到以前的版本。

监控

流量可以逐渐或一次性从蓝色环境切换到绿色环境。随着流量流向绿色实例,DevOps工程师有一小段时间在绿色实例上运行冒烟测试。这一点至关重要,因为他们需要确保新版本的所有方面都在用户受到广泛影响之前正常运行。

标签:

相关新闻
精彩推荐