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的主版本以及灰度版本的發佈歷史

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章