1

项目部署与发布

 2 years ago
source link: https://zsmhub.github.io/post/%E5%90%8E%E7%AB%AF/%E9%A1%B9%E7%9B%AE%E9%83%A8%E7%BD%B2%E4%B8%8E%E5%8F%91%E5%B8%83/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

项目部署与发布

2021-07-07 约 391 字 预计阅读 1 分钟

目前我们的k8s部署是通过金丝雀发布(灰度发布),发布新版本时,旧版本的Pod继续运行,当新版本的Pod全部启动成功,且等待一定时间后,再Kill掉旧版本的Pod。

金丝雀发布(灰度发布)

与蓝绿部署类似,金丝雀发布也是始于两套环境:有实时流量的环境以及没有实时流量但包含了更新的代码的环境。与蓝绿部署不同的是,流量是逐渐迁移到更新的代码。一开始是1%,然后10%、25%,以此类推,直至100%。通过自动化发布,当确认代码能够正确运行时,它就可以逐步推广到更大、更关键的环境中。如果在任何时候发生了问题,所有流量都会被回滚到之前的版本。这在很大程度上降低了风险,因为仅有一小部分用户会使用到新的代码。

IT不仅可以控制用户部署的比例,而且金丝雀发布还可以从不太重要的用户开始,例如使用免费账户的用户或相对来说不太重要的业务市场。

金丝雀发布:实时流量逐渐从旧版本迁移到新版本直到更新生效。

文章作者 ZsmHub

上次更新 2021-07-07

许可协议 CC BY-NC-ND 4.0

赞赏支持
理财之路 Go Zero

Related Issues not found

Please contact @zsmhub to initialize the comment


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK