2019年技術盤點容器篇:聽騰訊雲講講踏入成熟期的容器技術

據相關調研機構報告數據顯示,目前應用容器市場規模將從2016年的 7.62億美圓增⻓到2020年的27億美圓。程序員

顯而易⻅,引入容器所展示的巨大靈活性有效推進了其採用速率,使企業日益依賴該技術,與此同時容器技術也逐漸成⻓爲虛擬機的實力替代品。對此,調研機構Forrester公司曾指出,58%的開發商計劃在將來一年內使用容器或正在計劃使用容器。 docker

總結一句,使用容器能夠幫助企業提升效率、下降成本,甚至在安全性方面有更可靠的保障, 這些易於打包以及輕量級的組件能夠與同一虛擬機中的其餘組件一塊兒運行。安全

此外容器的大力採用也讓開發者經過建立虛擬「沙箱」來更快、更好地工做,從而完成編寫、管理和操做軟件代碼,能夠在不影響服務器或虛擬機(VM)上運行其餘應用程序和系統的狀況下就可完成此操做。 服務器

基於此,CSDN雲計算特別策劃了容器服務盤點系列文章,欲以CSDN中立技術社區專業、客觀的角度,探討當前雲服務商眼中的「容器服務」併爲開發者選擇合適的容器服務提供部分可參考的建議,以幫助其實現容器技術的創新應用等。微信

爲此咱們採訪了數家提供容器服務的雲服務廠商,而本期程序員硬核評測則特別邀請到騰訊雲容器產品總監鄒輝,詳盡分享針對容器發展的真知灼見以及明星產品企業級容器雲服務平臺TKE的方方面面。
圖片描述網絡

騰訊雲容器產品總監 鄒輝

新技術的關注與實踐,不是一朝一夕架構

據阿晶瞭解,騰訊雲投身容器技術的時間挺早,而TKE可謂是其容器服務的明星產品,常常被歸納爲「基於原生 Kubernetes 來提供以容器爲核心、高度可擴展的高性能容器管理平臺」。框架

具體來講,TKE能夠作到無縫銜接騰訊雲在計算、網絡、存儲、以及安全方面的諸多能力,還高效擴展了 網絡、GPU虛擬化、特定CRD資源 等 Kubernetes 插件。不但在有效部署、資源調度、服務發現、動態伸縮上面助力完整功能;還提升了大規模容器集羣下業務管理的便捷性。將來,騰訊雲容器產品總監鄒輝也強調,做爲騰訊雲在容器產品中最核心的部分,TKE的功能層深度優化以及周邊生態的演進將成爲團隊相當重要的事情。less

談及TKE,咱們會不自覺想到騰訊雲原生應用編排平臺的創新實踐,除了涵蓋容器服務層面以外,衆所周知的開發運維平臺、Service mesh、無服務套件以及基於以上產品的大數據、人工智能解決方案等通通包含其中。據瞭解,目前該平臺在騰訊內部已經成功承載了數以億計的容器,並支撐衆多海量業務平穩運行以及迭代升級,同時還成功賦能互聯網、電商、政務、能源等多領域、多方向。運維

對此鄒輝總結道:「其實騰訊很早以前就關注了雲原生以及容器技術的發展,這注定是將來頗有表明性以及前景的技術方向之一,因此咱們對此的投入力度很大。」

確實!據阿晶瞭解,不管是產品仍是社區運營,騰訊雲對其都是關注頗多。從產品層面出發,騰訊雲在容器、微服務以及無服務器領域都有專業的研發團隊來進行技術以及業務的支撐,相關產品的推出更是層出不窮。

「相比於其餘雲廠商,騰訊內部在很早以前就已經研究與容器相關的技術與服務,其中不少成功的業務,例如遊戲、微信、廣告等都選擇運行在容器技術上,能夠說容器技術正在支撐着數十億計的用戶」他說。

若是從技術角度着眼,騰訊內部的容器建設也經歷了從青澀到成熟的發展路徑,這個過程當中不管是在容器的功能仍是穩定性,抑或是資源利用率上都有了逐漸深刻的探討與研究。將來選擇將這些通過實踐歷練的技術以及經驗搬運到雲上,並加以開放給外部更多的企業或者我的開發者使用,或許纔是騰訊雲容器的關鍵優點所在。

除了產品與技術,在社區領域方面,騰訊雲選擇在這兩年努力擁抱開源的技術趨向,將內部更多、更好的架構與經驗、甚至是代碼開放給更多用戶,並同時加大對雲計算社區的投入。

「騰訊內部的容器發展經歷了多個階段,從最先之前的使用Cgroup來進行資源隔離並提高資源利用率,到後面使用docker容器而且基於yarn自研了一套調度框架,Kubernetes技術出現後騰訊內部的容器平臺又逐漸切換到Kubernetes技術棧,開始全面擁抱雲原生技術。隨着容器技術的演進,騰訊內部在開源這裏的意識也在發生變化,在開源社區的投入很是大。咱們一方面積極參與到開源社區中去,一方面也會逐漸把騰訊內部一些好的實踐及技術推廣到社區,給更多的人和企業帶來價值。」他補充道。

就目前的市場觀察,親測容器技術已成功邁入成熟期的發展階段。其中以Kubernetes爲表明,版本更新愈來愈快、功能愈加完善且生態也愈來愈健全。此外咱們看到不少監控、微服務以及更上層的部署,還包括不少AI、大數據框架都圍繞K8S進行了不少深層次的功能演進。現在整個容器技術已經被普遍接受,不少企業級用戶都在準備並實踐不少容器方面的技術,各大雲廠商也把容器技術做爲下一個雲市場技術爆發的重要機會點;在社區方面,以K8S爲表明的雲社區也正逐漸成長爲目前業界最紅火的技術社區之一。
談及在此背景下騰訊雲關注的技術點,鄒輝表示,當下備受關注的Severless技術應該可讓容器的發展更進一步,有效幫助企業在微服務的道路上得到更好更強的能力。此外輕量虛擬化技術的出現可以讓容器表現的更加穩定與安全,在多租戶混合部署的環境下真正釋放容器的價值。

容器領域的種種,咱們有所應對

儘管容器技術風生水起,但實際在企業落地的過程當中依舊存在不少問題。值得注意的一點,目前業界不少容器技術都以開源的方式提供給用戶,但在實際操做中將開源技術使用起來是一回事兒,用的好又是另一回事兒。

「特別針對一些中小企業,不僅僅是K8S技術自己存在必定的門檻,更大的困難在於要將應用很是好的構建在K8S上,既能享受到K8S帶來的便利,也能保證應用的可靠性,這裏面須要考量的點不少,須要更多的技術保障和實踐的積累。在不少客戶使用容器過程當中,每每由於Pod資源設置的不合理,OOM後觸發內核與K8S相關組件,最終引起節點Notready,更嚴重的是若是集羣資源預留不夠,可能會產生雪崩式效應。因此如何提早發現、規避、自動恢復這些問題是用戶在使用K8S過程當中,所須要重點考慮的」他提出。

一樣對於中大型用戶來講,怎樣將企業中較爲傳統的複雜架構牽引至以K8S爲表明的容器服務上是十分值得探究的。主要仍是由於在這個過程當中,大企業爲了達成容器化遷移,必然會爲了適配原有習慣或者功能在K8S基礎上進行新功能的拓展,例如磁盤隔離、網絡隔離、容器IP保持不變等,須要把傳統複雜的架構遷移到容器中。

因此在此基礎之上,鄒輝提出騰訊雲在容器領域,會增長更加豐富的基礎產品形態。除了目前對外提供的標準K8S服務以外,也會使用輕量虛擬化+virtual kubelet技術,對外提供K8S原生接口這樣的Serverless K8S集羣,作到在這個彈性集羣中用戶使用K8S只須要關注容器資源便可,最大程度減小對底層資源的關注。同時騰訊雲容器服務,也會將騰訊內部一些好的實踐,如TAPP應用管理(用於讓kubernetes服務及pod管理更加精細化、發佈過程更加可控)、GPU虛擬化等技術對外輸出。

除此以外,固然還有很重要的一方面就是容器在使用場景方面的擴展,例如:TKE結合istio爲用戶提供網格服務;TKE產品與大數據、AI行業相結合,打造以K8S+虛擬化爲基礎,具有更豐富的AI或者大數據能力的解決方案;在遊戲領域,TKE也會與騰訊遊戲技術運營部門合做,將騰訊內部的遊戲架構容器化所用到的典型經驗和技術分享出來,推出容器化的遊戲解決方案。

另外,在容器私有云和混合雲這裏,騰訊雲也推出了TKE企業容器平臺,給企業提供私有化的容器解決方案。TKE企業版採用與騰訊公有云容器服務一致的架構和管理模式,因此企業在私有化管理容器服務的同時,也可以很是便捷的打通雲上的容器服務並得到一致的管理體驗,實現混合雲部署;在將來,咱們也會進一步擴展這裏的功能,實現混合雲管理。
圖片描述

騰訊雲企業級容器雲平臺TKE

採訪之餘,鄒輝還針對容器廠商之間的競爭給出了本身的小建議。他代表,做爲容器廠商在面對這個需求愈來愈明顯且前景愈來愈廣闊的市場環境,若是想要把握關鍵入場券,最重要仍是應該聚焦產品底層的穩定性打磨,這是很是關鍵的一點。

此外更須要去補全以容器爲基礎的總體形態,對此阿晶這樣理解:除了提供標準的K8S服務來使用,更重要的是提供完備的上層服務來解決彈性等系列需求,讓總體變得更有價值。

最後在私有云容器領域,確定須要不斷提升容器的交付效率,下降成原本實現更標準化、更流程化的用戶體驗。阿晶以爲這不僅僅是給予容器服務廠商的小貼士,更是騰訊雲在容器技術領域須要努力追求的目標之一。

AI、severless以及服務網格,火技術更需保持新鮮度

談及AI技術關聯容器的表現,鄒輝還詳細列舉了騰訊雲內部的實踐狀況。能夠確定的一點,目前以AI爲表明的新學習框架,都在逐一貫K8S看齊,由於應用容器底層的部署和調度能力可以很方便助力上層框架的運轉,關於這一點,在騰訊雲內部也確實積累了很多經驗。

固然其中的困難也是存在的,例若有些團隊可能在推理任務過程當中或者在虛擬過程當中按之前的方式使用GPU,可能就是買一些虛擬機,但與實際的GPU卡的運行效率相比是很是低的,運行與閒置相互交替,成本浪費較大;另外不一樣GPU卡的性能差別,以及底層環境異構問題也是AI團隊所面臨的挑戰。騰訊在這幾塊(成本、性能、異構)作了大量的技術優化,如GPU虛擬化技術、GPU拓撲識別……等等,這是其一。

「此外,咱們的一些AI團隊以前部署AI框架及服務時,更多仍是依靠人工來部署及管理底層資源;與容器服務結合後,這些都極大程度解放了他們運維部署方面的工做,帶來了不少便利性。」他說。

鄒輝在採訪過程當中十分確定Severless無服務器技術對容器技術的創新發展,究竟能夠起到何種做用? 無服務計算的理念提出,讓容器服務的產品形態可以獲得更進一步擴展,用戶可以真的不用關注底層那些資源,例如節點什麼時候該擴容、節點是否故障、節點資源利用率是多少等,讓用戶從一些煩瑣的工做中解放出來,更多關注業務以及架構狀況。

此外,騰訊雲針對服務網格方面的技術創新呢?據阿晶瞭解,關於服務網格,目前在騰訊內部也在逐漸推廣,居高不下的同時也碰到的了兩個最大的問題。
首當其衝的就是性能問題。由於目前技術會對全部的容量作一套額外劫持、解包、分析、再打包這樣的過程,因此在性能的優化上騰訊雲其實作了挺多研究,比方說istio 數據轉發層面與管控層面優化;另外在騰訊內部還有大量的istio擴展協議使用經驗,怎麼樣把這些自定義協議適配到istio,也作了不少工做。

截止阿晶發稿以前,騰訊雲已經在雲原生技術大會 KubeCon + CloudNativeCon + Open Source Summit(原 LC3)上重磅發佈四大雲原生技術產品,包括企業級容器服務平臺TKE、容器服務網格TKE Mesh、Serverless 2.0、一站式DevOps平臺。做爲雲計算領域的引領者,阿晶以爲將來的騰訊雲在容器、微服務以及無服務器領域的諸多實踐,或將真正開啓雲原生時代。(本文轉載自infoQ)

相關文章
相關標籤/搜索