蓝绿发布是部署过程中并不停止掉老版本,而是直接部署一套新版本,等新版本运行起来后,再将流量全部切换到新版本上。新版本验证通过,删除老版本,否则流量重新切换到旧版本。过程中新旧两版本同时部署,需要考虑资源的使用情况。

       如下图所示,是一种基于现在微服务架构,来实现蓝绿发布。微服务以代理Service提供对外服务,Service通过Selector的标签选择其代理的微服务。微服务通过环境变量发现Service,然后在Eureka上注册Service的服务地址和端口。Service选择不同的标签如run:v1和run:v2实现不同版本的切换。

       API网关尚不支持流量切换,第二代ServiceMesh,如下图所示,其强大的路由控制功能,抽象出的虚拟服务,可以方便的实现蓝绿发布。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐