發布機制-金絲雀發布:百科


ylbtech-發布機制-金絲雀發布:百科

 

1. 金絲雀發布(單服務器組)返回頂部
1、
一、單服務器組發布

先解釋下單服務器組的概念,早先我們機器資源比較緊張,不像現在雲計算和虛擬化(包括容器技術)這么發達,所以應用機器基本是預先靜態分配好的(一般由運維負責分配),原來應用 A 住在這 N 台機器上,那么下次升級發布的應用 A 也住在這 N 台機器上,所以稱為單服務器組發布方式。

2、
1.2 金絲雀發布(單服務器組)

在蠻力發布基礎上的一種簡單改進發布方式,目前仍然是不少成長型技術組織的主流發布方式。單服務器組下的金絲雀發布的簡化步驟如下圖所示:

600發布前

600先發一台金絲雀

600全部發完

 實踐要點
  1. 金絲雀發布一般先發 1 台,或者一個小比例,例如 2% 的服務器,主要做流量驗證用,也稱為金絲雀 (Canary) 測試(國內常稱灰度測試)。以前曠工開礦下礦洞前,先會放一只金絲雀進去探是否有有毒氣體,看金絲雀能否活下來,金絲雀發布由此得名。簡單的金絲雀測試一般通過手工測試驗證,復雜的金絲雀測試需要比較完善的監控基礎設施配合,通過監控指標反饋,觀察金絲雀的健康狀況,作為后續發布或回退的依據。

  2. 如果金絲測試通過,則把剩余的 V1 版本全部升級為 V2 版本。如果金絲雀測試失敗,則直接回退金絲雀,發布失敗。

 優勢和適用場合

優勢:

  • 用戶體驗影響小,金絲雀發布過程出現問題只影響少量用戶

不足:

  • 發布自動化程度不夠,發布期間可引發服務中斷

適用場合:

  • 對新版本功能或性能缺乏足夠信心

  • 用戶體驗要求較高的網站業務場景

  • 缺乏足夠的自動化發布工具研發能力

 流量模式

600

少量金絲雀先接受流量,再全量發布,圖片來自附錄 6.1

3、
2.返回頂部
1、
隨着雲計算和虛擬化技術的成熟,特別是 容器等輕量級虛擬化技術的引入,計算資源受限和申請緩慢問題已經逐步解決,可以做到彈性按需分配。為一次發布分配兩組服務器,一組運行現有的 V1 老版本,一組運行待上線的 V2 新版本,再通過 LB 切換流量方式完成發布,這就是所謂的雙服務器組發布方式。
2、
2.2 金絲雀發布(雙服務器組)

對藍綠部署的一種簡單優化,發布時先從綠組拉入 1 台金絲雀,待金絲雀驗證通過再發全量。對比藍綠發布,該發布方式的優勢是有一個生產流量的金絲雀驗證過程,可以減輕 V2 可能有問題的風險和影響面。簡化發布過程如下圖所示:

600

3、
3.返回頂部
 
4.返回頂部
 
5.返回頂部
1、
2、
 
6.返回頂部
 
warn 作者:ylbtech
出處:http://ylbtech.cnblogs.com/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM