江苏白癜风微信交流群 http://liangssw.com/bozhu/12747.html

在介绍蓝绿部署之前,我们先讲一个海豚的小秘密...

海豚的秘密

很多人都不知道:

海豚可以永远不睡觉。

是什么样的能力,使得海豚可以永远保持清醒呢?靠的是海豚大脑特殊的运作方式。

和人类似,海豚的大脑也分为左脑和右脑两个部分。在活跃的状态时,海豚的左、右脑都是清醒的:

当然,海豚也是血肉之躯,也是需要休息的。在休息时,海豚的其中一半大脑会进入睡眠,另一半大脑则仍然保持清醒,以面对各种外界情况。

每隔两个小时,左、右脑会进行交替,比如,这一刻左脑睡眠、右脑清醒,下一刻左脑清醒、右脑睡眠。

这就是海豚永远不会真正睡觉的秘密。

明白了海豚的秘密,蓝绿部署就不难理解了。

什么是蓝绿部署?

蓝绿部署,是一种可以保证系统在不间断提供服务的情况下,上线的部署方式。

如何保证不间断提供服务呢?

蓝绿部署的模型中包含两个集群,就好比海豚的左脑和右脑

在没有上线的正常情况下,集群A和集群B的代码版本是一致的,并且同时对外提供服务。

在系统升级时,我们首先把集群A从负载均衡中移除,进行新版本的部署。此时,集群B仍然继续提供服务。

当集群A升级完毕,我们把负载均衡重新指向集群A,再把集群B从负载均衡中移除,进行新版本的部署。此时,集群A对外提供服务。

最后,当集群B也升级完毕,我们把集群B也恢复到负载列表当中。这时,两个集群的版本都已经升级,并且对外的服务没有中断。

从蓝绿部署的思想出发,我们可以进行“滚动部署”。

什么是滚动部署?

滚动部署是更细粒度下的版本平滑升级。滚动部署只需要一个集群,集群下的不同节点独立进行版本升级。

比如在一个16节点的集群中,我们选择每次升级4个节点:

经过四轮升级后,最终所有的节点都升级了版本。

如果喜欢这篇文章

记得转发和点赞,谢谢!



转载请注明地址:http://www.hthaituna.com/htbhjb/9530.html