天天看點

阿裡雲ACK聯合雲效助力「上海博卡 」DevOps轉型

客戶簡介:

博卡軟體于2004年在上海成立,是一家專注于為本地美麗生活相關行業提供軟體服務的_SaaS_軟體提供商,主要産品提供門店營運所需要的管理軟體,智能硬體以及營銷小程式等。

客戶痛點:

痛點一:博卡服務衆多小商戶,客戶需求高并發時必須每天傳遞數次

傳統的開發部署模式成為瓶頸, 必須打造高效的CI/CD系統

痛點二:沒有專職運維人員,不同開發需要對應流水線操作的權限管理

痛點三:IT架構複雜,數十個微服務和數十個前端應用,需要實作零停機的無縫遷移

痛點四:Kubernetes學習門檻過高,如何通過更簡單的管理成本獲得自動化擴縮容、自動運維

解決方案:

SaaS公司要在競争中拔得頭籌,就需要快速影響客戶需求,同時保持較高的穩定性。同時要快速占領市場,就需要不斷推出新産品不斷創新,這個時候開發的傳遞效率以及低成本試錯就尤為重要。

博卡将其SaaS應用完全部署在阿裡雲上,最終選用阿裡雲容器服務ACK+雲效解決方案,替代了最初ECS+Gitlab+Jenkins,打造其完整高效的CI/CD系統落地DevOps。

阿裡雲ACK聯合雲效助力「上海博卡 」DevOps轉型

方案效果:

1 高效落地DevOps

  • 從開發、預發到生産全周期覆寫。雲效的代碼管理Codeup的内置評審功能,能高效的完成Code Review。内置的代碼檢測開箱即用,促進編碼規範執行。
  • 雲效Flow流水線便捷實作持續傳遞,内置多種語言的流水線模闆,與容器服務ACK關聯,開箱即用。

2 零停機任意復原

通過雲效的Flow流水線可以復原基本上所有部署方式,阿裡雲ACK+Flow的最佳搭檔,則可以實作快速零停機復原任意版本(通過健康監測以及重新開機政策確定啟動的容器必然是可運作版本,如果出現無法啟動或者啟動異常的版本,則因為就緒監測無法通過是無法接收流量的,是以可以完成零停機或復原)

同時,因為ACK是基于Docker鏡像的更新,復原版本不會環境變化等因素導緻復原失敗。

3 降本增效

容器服務ACK根據每個Pod的cpu和記憶體資源需求自行排程,資源極緻利用。

節省了微服務自行部署中的高可用成本, 且節省手動配置等負擔。

4 應用護航,無懼故障與高峰

故障自動重新開機:通過Pod健康監測和就緒監測,與應用健康監測接口(比如SpringBoot的Actuator的health)即可簡單實作故障自動重新開機,解決了小公司沒有24*7快速響應運維人員的問題,可以做到自動化最高效的緩解問題。

自動擴容:對于某些應用瞬間突發流量、大量計算資源的需求,ACK可以根據此前配置規則自動擴容,確定應用的穩定性。

項目對比

| 對比内容 | 使用雲效前 | 使用雲效後 |

| --- | --- | --- |

| 釋出時長 | 10分鐘 | 3分鐘 |

| 代碼評審 | 很少 | 合并主分支強制要求 |

| 建構通知 | 不通知 | 自動釘釘通知 |

| 版本復原時長 | 1小時 | 3分鐘 |

| 日常和生産環境區分 | 代碼中配置檔案區分,存在開發人員誤修改影響部署環境配置的風險 | 自動注入環境變量來區分,最大程度防止代碼庫的配置檔案影響部署環境配置 |

| 代碼掃描 | IDE中插件自己掃描,比較随意 | 送出後自動掃描,清晰提示掃描結果 |

| 定時部署 | 人工等待到時間進行操作 | 設定定時釋出 |

| 傳遞品質 | 依靠開發人員個人水準以及随機檢查保證 | 通過各種檢測插件進行品質檢測,阻止異常建構或者部署 |

|對比内容| 使用ACK前 | 使用ACK後 |

| 零停機部署 | 不支援 | 支援 |

| 應用異常自動修複 | 不支援 | 支援 |

| 擴容耗時 | 1小時 | 1分鐘 |

| 擴容方式 | 手動修改nginx配置 | 自動擴容 |

| 敏感資訊安全 | 代碼庫儲存,存在洩露風險

伺服器配置檔案,管理成本高以及有丢失風險

不容易複用 | 配置項,以及保密字典存儲,簡單複用以及保密性高,不容易暴露 |

| 新應用部署 | 半天 | 10分鐘 |

| 生産環境穩定性 | 出現問題客戶發現或者監控發現後,手動復原再修複問題重新釋出,影響時間長 | 通過健康監測等手段阻止異常容器接收流量,以保證線上應用的基本品質 |

繼續閱讀