雲原生的新思考,爲何容器已經無處不在了

4月24日,中國信息通訊研究院主辦的首屆雲原生產業大會在北京舉行,在《雲原生數字引領將來》的主題演講中,阿里雲容器服務總監易立表示:「雲原生不但能夠很好的支持互聯網應用,也在深入影響着新的計算架構、新的智能數據應用。以容器、服務網格、微服務、Serverless爲表明的雲原生技術,帶來一種全新的方式來構建應用。」本文根據易立演講內容整理而成。算法

擁抱雲原生技術,解耦系統複雜度

現在,大多數企業開始全面擁抱雲計算,在All-in-Cloud全面到來的時代,三個重要轉變:基礎設施的雲化、核心技術的互聯網化、業務的數據化和智能化。在各行各業中,都有不少業務應用從誕生之初就生長在雲端,各個企業也所以愈來愈像互聯網公司,而技術能力被視爲不可或缺的核心競爭力。在2019阿里雲峯會·北京站上,阿里雲智能總裁張建鋒在談及‘核心技術的互聯網化’時,也提到了大力投資雲原生。數據庫

爲何要擁抱雲原生?一方面,雲計算已經重塑了軟件的整個生命週期,從架構設計到開發,再到構建、交付和運維等全部環節;另外一方面,企業IT架構也隨之發生巨大變化,而業務又深度依賴IT能力。這帶來了必定程度的複雜性和挑戰性。編程

正如人類社會發展伴隨着技術革命與社會大分工同樣,雲原生技術的出現解耦了不少複雜性,這是IT技術的進步。安全

首先,Docker實現了應用與運行環境的解耦,衆多業務應用負載均可以被容器化,並且應用容器化知足了敏捷、可遷移、標準化的訴求;其次,Kubernetes的出現讓資源編排調度與底層基礎設施解耦,應用和資源的管控也開始駕輕就熟,容器編排實現資源編排、高效調度;隨後,Istio爲表明的服務網格技術解耦了服務實現與服務治理能力。此外,阿里雲還提供了Open API、SDK等豐富的開發工具,實現第三方被集成,爲雲的生態夥伴提供廣闊的可能性。這樣的技術分層推進了社會分工,極大促進了技術和業務創新。服務器

在阿里雲看來,雲原生首先能夠支持互聯網規模應用,能夠更加快速地創新、和低成本試錯;其次,屏蔽了底層基礎架構的差別和複雜性;同時,服務網格、無服務計算等新的計算範型的不斷涌現,給總體IT架構能力帶來了極致彈性,從而更好地服務於業務。用戶能夠基於阿里雲容器服務構建面向領域的雲原生框架,如面向機器學習的Kubeflow,和麪向無服務器的Knative等等。網絡

方興未艾,容器應用的新思考

容器已經無處不在了, 做爲容器服務的提供者,咱們認爲容器技術會繼續發展,被應用於「新的計算形態」,「新的應用負載」和「新的物理邊界」,在此將相關觀察和新思考分享給你們。架構

1 新的計算形態:雲原生的Serverless Runtime已來框架

雲原生技術理念,是使企業用戶及開發者只關注應用開發,無需關注基礎設施及基礎服務。與之類似的Serverless計算,將應用服務資源化並以API接口的方式提供出來,使用者只需從客戶端發起調用請求便可,更重要的是,pay as you go 可以真正爲用戶節省成本。less

Serverless Runtime 分爲面向基礎架構容器的實現,面向應用服務封裝的實現,和事件驅動面向函數計算的實現。運維

雲原生Serverless Runtime形態包含多種方式。業界各個廠商也相應地設計出了不一樣服務解決方案:

  • 面向函數的Function as a Service(FaaS) - 好比AWS Lambda,阿里雲的函數計算,提供了事件驅動的編程方式,用戶只需提供函數實現響應觸發實踐,開發效率很高。阿里雲函數計算按照調用量計費,能夠根據業務流量平滑調整計算資源,在典型場景下,會有10%~90%的成本降低。客戶碼隆科技作模型預測,利用函數計算下降了40%的計算成本。
  • 面向應用 - 好比Google App Engine、新發布的Cloud Run和阿里雲EDAS Serverless,用戶只需提供應用實現而平臺負責應用彈性、自動化運維,這主要面向互聯網類型應用。相比於FaaS,面向應用的Serverless形態無需改造現有應用,阿里雲EDAS Serverless爲流行的開源微服務框架提供了無服務器應用託管平臺,支持Spring Cloud,Apache Dubbo,或者阿里雲HSF框架。
  • 面向容器 – 好比AWS fargate,或者是阿里雲的Serverless Kubernetes 應用的載體是容器鏡像,靈活性很好,配合調度系統能夠支持各類類型應用,而無需管理底層基礎架構。針對容器化應用,阿里雲在去年5月推出了Serverless Kubernetes容器服務,無需節點管理和容量規劃,按應用所需資源付費,彈性擴容。針對阿里雲基礎能力優化,安全,高效。極大下降了管理Kubernetes集羣的。Serverless Kubernetes的底層是構建在阿里雲針對容器優化的輕量虛擬化彈性容器實例之上,提供了輕量、高效、安全的容器應用執行環境。Serverless Kubernetes無需修改便可部署容器類型應用。

2 新的應用負載:容器正被用於愈來愈多類型應用

最先容器被認爲不適合傳統的已有應用,可是如今情況已大爲改觀。容器已經開啓了對Windows生態的支持,新發布的1.14版本中Kubernetes 的Pod,Service,應用編排,CNI 網絡等絕大多數核心能力都已經在 Windows 節點上獲得了支持。當今Windows系統依然佔有60%的份額,好比企業的ERP軟件、基於ASP的應用、大量的Windows的數據庫等,這些傳統的基於虛擬化的應用,均可以在代碼不用重寫的狀況下實現容器化。

基於容器技術構建的新架構,會催生新的應用業務價值。雲原生AI是很是重要的應用場景,快速搭建AI環境,高效利用底層資源,無縫配合深度學習的全生命週期。對於AI工程,雲原生系統能夠在四個維度上爲提效:

  • 優化異構資源調度
  • 彈性、高效、細粒度(支持GPU共享)
  • 簡化異構資源管理複雜性,提高可觀測性和使用效率
  • 可移植、可組裝、可重現的AI流程

以深度學習分佈式訓練爲例,經過阿里雲容器服務能夠得到三重增強。資源優化:統一調度CPU/GPU等異構資源,使用VPC/RDMA網絡加速;性能提高:GPU 64卡P100,加速比提高90%,相比原生Tensorflow有45%提高;算法優化:MPI代替gRPC通訊、ring-allreduce環形通訊、計算和通訊重疊、梯度融合等。

還有其餘高性能計算的場景,以基因數據處理爲例,阿里雲某用戶在5小時內完成WGS 100GB數據處理,支持5000+步驟的複雜流程, 90秒實現500節點擴容充分發揮容器極致彈性。

3 新的物理邊界:雲-邊-端,容器不止運行在IDC服務器中

容器最被熟知的基礎環境是數據中心,在業務流量高峯與低谷之時,憑藉容器極致彈性能夠實現應用與資源伸縮,有效地保證高利用率與高性價比。

隨着5G和物聯網時代的到來,傳統雲計算中心集中存儲、計算的模式已經沒法知足終端設備對於時效、容量、算力的需求。將雲計算的能力下沉到邊緣側、設備側,並經過中心進行統一交付、運維、管控,將是雲計算的重要發展趨勢。以Kubernetes爲基礎的雲原生技術,在任何基礎設施上提供與雲一致的功能和體驗,實現雲-邊-端一體化的應用分發, 支持不一樣系統架構和網絡情況下,應用的分發和生命週期管理,而且針對邊緣及設備進行如訪問協議、同步機制、安全機制的種種優化。 
如前所述,應用容器化實現了標準化的可移植性,促成了敏捷彈性的雲原生應用架構。不只大大簡化了多雲/混合雲的部署,並且優化成本,同時提供更多的選擇,好比知足安全合規的要求、提高業務敏捷性、提高地域覆蓋性等等。

容器能夠適用於多種基礎環境,好比數據中心、邊緣雲、和多雲/混合雲,使得開發者關注迴歸到應用自己。

寫在最後

雲原生時代,是開發者最好的時代。

雲原生不但能夠很好的支持互聯網應用,也在深入影響着新的計算架構、新的智能數據應用。以容器、服務網格、微服務、Serverless爲表明的雲原生技術,帶來一種全新的方式來構建應用。此外,雲原生也在拓展雲計算的邊界,一方面是多雲、混合雲推進無邊界雲計算,一方面雲邊端的協同。

雲原生時代,也是雲廠商更好發揮做用、爲客戶提供更多價值的時代。

雲廠商須要幫助用戶最大化利用「雲」的能力,最大化發揮「雲」的價值,成就企業創造商業價值。



本文做者:木環

閱讀原文

本文爲雲棲社區原創內容,未經容許不得轉載。

相關文章
相關標籤/搜索