蓝绿发布、金丝雀发布(灰度发布)和滚动发布
作者:互联网
1、蓝绿发布 项目逻辑上分为AB组,在项目部署时,先把A组从负载均衡中摘除,进行新版本的部署,项目B继续提供服务,当A组升级完毕,负载均衡重新接入A组,再把B组摘除,进行新版本部署,A组重新提供服务。
最后B组也升级完成重新接入负载均衡,此时AB组均升级完成,并且都对外提供服务 优点: 发布策略简单,用户无感知,平滑过渡,升级/回滚速度快 缺点: 需要两倍以上的服务器,短时间内浪费资源成本
金丝雀发布也叫灰度发布 灰度发布只升级部分服务,让一部分用户继续使用老版本,一部分使用新版本, 如果新版本使用平滑并没什么意见,那么逐渐扩大升级范围,把所有用户都往新版本迁移 优点: 保证整体系统的稳定性,再初始灰度的时候就可以发现,调整问题,影响范围可控。 用户无感知 缺点: 自动化要求高
滚动发布: 滚动发布指每次都只升级一个或者多个服务,升级完成后加入prod环境,不断执行这个 过程,直到所有程序都升级到新版本 优点: 用户无感知,节约资源 缺点: 部署时间慢,取决于每个阶段更新时间 发布策略较为复杂 无法确认ok的环境,不易回滚
如果自动化运维能力不够,肯定越简单越好,建议蓝绿发布
如果业务对用户依赖很强,建议灰度发布
如果是K8s平台,建议滚动发布
标签:金丝雀,蓝绿,用户,升级,发布,灰度,版本 来源: https://www.cnblogs.com/tigergaonotes/p/15619841.html