Apollo之灰度发布
1.定義
灰度發布是指在黑與白之間,能夠平滑過渡的一種發布方式。在其上可以進行A/B testing,即讓一部分用戶繼續用產品特性A,一部分用戶開始用產品特性B,如果用戶對B沒有什么反對意見,那么逐步擴大范圍,把所有用戶都遷移到B上面來。
2.Apollo實現的功能
1)對于一些對程序有比較大影響的配置,可以先在一個或者多個實例生效,觀察一段時間沒問題后再全量發布配置。
2)對于一些需要調優的配置參數,可以通過灰度發布功能來實現A/B測試。可以在不同的機器上應用不同的配置,不斷調整、測評一段時間后找出較優的配置再全量發布配置。
3.場景介紹
我們將上一篇博客中SpringBoot集成Apollo的項目部署在兩臺服務器上,用來演示。
?
灰度目標
我們希望my.test這個配置,對一臺服務器灰度發布一個my.test=java,而另一臺服務器仍保持不變。
?
4.創建灰度
1)點擊application namespace右上角的 創建灰度 按鈕
?
2)點擊確定后,灰度版本就創建成功了,頁面會自動切換到 灰度版本 Tab
?
5.灰度配置
1)點擊 主版本的配置 中,要修改的配置最右側的 對此配置灰度 按鈕
?
2)修改灰度值
?
6.配置灰度規則
1)切換到 灰度規則 Tab,點擊 新增規則 按鈕
?
2)在彈出框中 灰度的IP 下拉框會默認展示當前使用配置的機器列表,選擇我們要灰度的IP,點擊完成
?
3)灰度發布
4)發布后,切換到 灰度實例列表 Tab,就能看到某一個服務器已經使用了灰度發布的值
?
7.全量發布
如果灰度的配置測試下來比較理想,符合預期,那么就可以操作 全量發布 。
全量發布的效果是:
1)灰度版本的配置會合并回主版本,在這個例子中,就是主版本的my.test會變成java 2)主版本的配置會自動進行一次發布 3)在全量發布頁面,可以選擇是否保留當前灰度版本,默認為不保留
?
8.放棄發布
如果灰度版本不理想或者不需要了,可以點擊 放棄灰度
9.發布歷史
點擊主版本的 發布歷史 按鈕,可以看到當前namespace的主版本以及灰度版本的發布歷史
?
總結
以上是生活随笔為你收集整理的Apollo之灰度发布的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringBoot快速集成Apollo
- 下一篇: Elastic Stack简介和Elas