全链路灰度发布
在微服務體系架構中,服務之間的依賴關系錯綜復雜,有時某個功能發版依賴多個服務同時升級上線。我們希望可以對這些服務的新版本同時進行小流量灰度驗證,這就是微服務架構中特有的全鏈路灰度場景,通過構建從網關到整個后端服務的環境隔離來對多個不同版本的服務進行灰度驗證。其實就是多個微服務共同變動。
那么全鏈路灰度具體是如何實現呢?通過上面的討論,我們需要解決以下問題:
鏈路上各個組件和服務能夠根據請求流量特征進行動態路由
需要對服務下的所有節點進行分組,能夠區分版本
需要對流量進行灰度標識、版本標識
需要識別出不同版本的灰度流量
za21負責灰度標簽透傳。
北斗負責流量標識鏈路傳遞,檢測到入口有configmap,經過的流量都會給帶上envtag或特殊的traceid。
nacos負責服務發現,服務注冊,有env的都注冊為灰度環境,并配置標簽轉發規則。
BFE配置流量入口的標簽轉發規則。
oam負責創建出灰度環境。
總結
- 上一篇: C++之父:比特币是用C++开发的,我为
- 下一篇: PaaS中OpenShift持久化存储的