IDC 預測,到 2024 年,數字經濟的發展将孕育出超過 5 億個新應用,這與過去 40 年間出現的應用數量相當。
雲原生讓這些海量新應用在短時間内湧現成為可能,它将成為主流的現代化開發方式。雲原生的基礎架構編排方式也将成為新一代的雲作業系統,助推雲計算平台演進。
然而,企業在引入和運用雲原生時,依然面臨三大難題:
- 傳統應用需要轉型為雲原生應用嗎?該怎麼做?
- 雲原生應用的部署有成熟的标準或方法論嗎?
- 如何利用雲原生的優勢來提升企業服務品質?
針對三大難題,青雲科
技 KubeSphere 解決方案架構師申紅磊在主題為《應用容器化部署,基于 KubeSphere 的務虛與務實探讨》分享中給出了答案。
以下是分享内容精華:
為什麼要雲原生轉型?
雲計算平台已經被企業所接受,但企業在上雲的過程中還需要明白以下幾點:
- 雲計算最大的困難不是搭建雲平台,而是應用遷移上雲。
- 非雲原生的傳統應用遷移上雲成本較高。
- 傳統應用遷移方式如果隻是采用虛拟化的重新部署,則無法發揮雲平台特性。
雲原生可以分成雲和原生兩個部分。雲指的是雲計算;原生就是土生土長的意思。随着雲原生時代的到來,企業在開始設計應用的時候便要考慮到在雲上開發、運作應用。
應用容器化部署有标準麼?
在雲原生的大背景下,到底要如何進行應用容器化部署?是否有一套标準理論呢?
首先,我們就不得不提“雲原生十二要素”。“雲原生十二要素”和《Beyondthe Twelve-Factor App》作為建構 SaaS 服務的一套方法論,可以使開發者花費最少的學習成本加入到項目中去。無論是從研發、應用還是客戶的角度,底層建設基本都會遵循這些原則去做。
第二,我們總結了應用容器化部署的規範标準和遷移流程。企業在應用上雲實踐中無需完全按照标準執行,可因地制宜總結出适合自身的應用容器化部署标準。
應用容器化部署規範标準,具體如下:
- 準入規範
- 提供健康檢查接口
- 鏡像盡可能小
- 鏡像的軟體包、安全
- 生産服務必須高可用
- 負載均衡
- 東西向-Service
- 南北向-LB
- 南北向-Ingress
- 容器使用者(非root)
- 不适用root使用者啟動程序,有安全隐患
- 分層的複用
- 慎用Alpine鏡像
- 編譯、構造相容性
- 各種不可測的問題
- 高可用
- 生産配置反親和性
- PodAntiAffinity
- 日志輸出
- 關鍵日志輸出到标準輸出(stdout)
- 日志持久化存儲到PVC
- 禁止生産輸出debug
- 避免包含敏感資訊
應用容器化部署遷移流程,具體如下:
- 前期調研
- 應用規模
- 應用/元件類型
- 應用/元件的配置
- 應用/元件業務連續性
- 應用網絡/IP 要求
- 應用/元件之間的通路關系
- 存儲服務
- 遷移方案設計
- 熱遷移、冷遷移、資料遷移等方案
- 按應用運作級别、複雜度次元
- 異常情況處理流程設計
- 應用運作驗證測試案例設計
- 遷移方案驗證
- 驗證遷移方案和異常回退方案
- 應用驗證,流量切換等
- 應用遷移
- 遷移方案
- 遷移時間計劃方案
- 完成系統遷移和測試工作
如何基于開源項目展開部署實踐?
應用遷移上雲可以分為兩類:應用本身和中間件。
對比傳統搭建微服務的方式,多子產品和中間件所需要耗費的時間會很長。而基于現代化雲原生應用搭建中間件,ZipKin/Skywalking、ELK、RabbitMQ 等都可以做到開箱即用。
除此之外,企業原有的服務子產品,比如網關、服務叢集、分布式排程系統、認證中心等,隻需要關心如何配置,依據前文所說的“雲原生十二要素”和微服務設計原則方法論去拆分,再進行容器化部署,成功上容器後,遷移便更加簡單便捷。
KubeSphere 之上的無限暢想
無論是平台的應用改造還是新應用上雲,實作過程都可以根據一套技術路徑。
從資源角度,應用上雲的可從以下步驟入手:
- 平台底座建構
- 開發應用更新
- 全面轉化
- 深度使用
需要強調的是,在全面轉化之前,企業需提前将内部内容系統進行應用分類,試點上雲。成功上雲之後才可以在雲上做深度使用。
從應用角度看,擁抱雲原生可分為以下步驟:
- 試點應用實踐
- 内部核心應用推廣
- 系統批量化改造
- 業務創新
其中最核心的是要做應用創新,創造價值。
如今,企業雲原生轉型勢在必行,但在轉型過程中,容器雲平台的建設、運維,以及研發人員的教育訓練,是一個更大的挑戰。是以企業可以基于青雲科技推出的 KubeSphere 容器平台,來建構自身的容器雲平台,理由如下:
- 企業能夠全身心關注以應用角度擁抱雲原生。
- 用 KubeSphere 來降低 K8s 的高學習成本。
- 用 KubeKey 來簡化 K8s 的複雜的部署安裝。
- 用 KubeSphere 的積木式元件,來規避功能元件選型複雜。
- 用 KubeSphere 彌補 K8s 的本土化支援。
- 用 KubeSphere 的增加企業級多租戶模式,更高安全性。
參考如下對比項:
總體來講,從頭開發建設周期長、成本高、購買套裝軟體不滿足開放可控原則、成本投入較高。KubeSphere 容器平台,能夠全面消解這些難題,幫助企業建構容器雲平台,全力推進應用容器化部署。
即可下載下傳演講 PPT