针对特定MicroService的蓝绿色部署

时间:2016-12-13 12:10:23

标签: kubernetes blue-green-deployment

我正在使用Kubernetes集群来部署我们的一系列微服务。我能够同时管理所有微服务的Blue Green depoyment,如下enter image description here

我的问题是,有些时候我只想部署App1或App2,或者两者都不部署所有的微服务。这可以使用Blue Green部署来管理吗?

已实施的东西:(想要仅使用蓝绿策略部署App3)

如果我使用蓝色部署运行BlueApp3,并且GreenApp1和GreenApp2重新启动BlueApp3。然后我测试了我的整个应用程序

enter image description here

一旦它可以正常工作,我会将BlueApp3转换为GreeApp3,如下面的enter image description here

  1. 这个策略很好吗?
  2. 如果不是那么为什么?
  3. 我们是否需要一次部署所有MicorServices来实施蓝绿色部署(这将导致不必要的部署)
  4. Blue Green部署策略的优点和缺点是我为一个特定的微服务所遵循的内容。

1 个答案:

答案 0 :(得分:1)

我建议完全将部署策略从组合切换到每个微服务。这包括您将不再运行全蓝色或全绿色部署的事实。

您可以为给定服务启动新部署,并在适当的位置切换kubernetes服务下的选择器,从app: app2, flavor: greenapp: app2, flavor: blue,当被视为已验证时,只需删除绿色部署对象。

在k8s上进行蓝绿色的一个挫折就是你没有真正利用k8s部署提供的潜力以及对RollingUpdates的原生支持