·
Across the Great Wall, we can reach every corner in the world.

Hackertalk 前后端都有灰度发布的功能:

  • 后端:借助 kubernetes 的 ingress 实现灰度发布,可以控制流量百分比
  • 前端:部署在 kubernetes 的版本和后端一样发布,部署在 aws 的新版本使用 amplify 的分支管理功能,比如 beta 分支发布到另一个域名供内部测试,成功后再合并到主分支

更细颗粒度的灰度发布可以通过软件上的 RBAC + Feature Toggle 实现,可以在服务端动态控制哪些功能要开放,用 aliyun 的 nacos 或者 aws 的 app config 实现。

Replies
8

大佬,“成功后再合并到主分支”这句话中的“主分支”指的是部署在 aws 上的新版本的主分支吗?为什么前端的新版本还要再进行拆分呢?直接把 beta 分支当成新版本可以吗?

另外,为什么前端不能像后端那样直接借助 kubernetes 的 ingress 实现灰度发布呢?

或者只用 aws 呢?为什么是用两个呢?

hackertalk 新版本部署在 aws,当前版本部署在阿里云

前端部署方案比较多,可以打包成 docker 放 k8s 跑,但是部署起来和后端一样很麻烦,或者用 vercel、aws amplify 等更方便的部署优化方案,amplify 提供分支部署能力,比如 beta 分支部署到 beta.hackertalk.net 上,调试测试更加方便。

大佬,请问用 kubernetes 的 ingress 实现灰度发布有哪些优缺点呢?

要会 kubernetes 的经验,学习成本挺高的

大佬,请问灰度发布的英文是gray release还是canary release呢?