Blue/Green Deployment(蓝绿部署)
蓝绿部署有两个后台集群,一个上线,一个备用。
(1) 部署版本1的应用(一开始的状态)
所有外部请求的流量都打到这个版本上。
(2) 部署版本2的应用
版本2的代码与版本1不同(新功能、Bug修复等)。
(3) 将流量从版本1切换到版本2。
(4) 如版本2测试正常,就正式用版本2。
新版本上线的过程中,并没有修改老版本的任何内容,在部署期间,老版本的状态不受影响。这样就减少了风险,可以随时回滚。
rolling update(滚动发布)
蓝绿发布的粒度是集群,资源消耗大,但是风险小,维护容易。
滚动发布的粒度是节点,资源消耗小,但维护比较复杂,风险较大。
(1) 没有一个确定OK的环境。可能更新之后有问题,回滚就比较麻烦。
(2) 修改了现有的环境。