Kubernetes大熱 青雲QingCloud眼中的容器技術
彷彿在一夜之間,Kubernetes莫名其妙地火了!但從技術的演進來看,一切又是那麼的自然而然,那些在外行人看來不可理喻、不可思議的事情,在專業技術人員眼中已經成為必然趨勢。Kubernetes無疑就是其中之一。
談Kubernetes就首先要說說容器技術,眾所周知,容器是通過虛擬化操作系統的方式來管理代碼和應用程序。不同的代碼和應用程序需要不同的容器,於是,容器的管理就成為技術發展過程中必須要解決的問題。
而Kubernetes的出現,可以用於自動部署,擴展和管理容器化(containerized)應用程序,支持一系列容器工具,包括Docker等,旨在提供跨主機集群的自動部署、擴展以及運行應用程序容器的平台。
對於雲計算企業來說,這樣的技術趨勢是一定要把握住的。在國內雲計算廠商中,一向以技術擅長的青雲QingCloud顯然不會錯過。在青雲QingCloud Insight 2017雲計算峰會上,青雲QingCloud CEO 黃允松闡述了公司未來「向上走」和「向下走」的戰略部署,其中的「向下走」已經表明,公司將繼續夯實在產品技術上的能力,只有這樣,才能更好地向上與合作夥伴對接,構建更加完善的雲計算生態。
應用上雲的必然結果
從某種程度上講,Kubernetes今天的火熱源於應用上雲的推動。近一兩年來,雲計算的普及進入加速階段,企業對於雲計算的應用不僅僅局限於IaaS層面,開始尋求將應用構建在IaaS平台上,從而將軟體真正變成一種服務。
當越來越多的應用構建在IaaS上之後,問題也就隨之而來,正如青雲QingCloud容器平台負責人王淵命所說,IaaS層接管硬體,在上面提供資料庫、緩存、大數據等PaaS的應用,也提供了對象存儲等SaaS類的服務,但應用除了業務邏輯,還要有監控、日誌處理、部署和交付、自動化運維、高可用、鏈路追蹤等,這些和業務邏輯並沒有太大關係;而每個應用程序的監控、日誌、部署、架構,需要的性能又各不相同,若想把它們統一起來,由雲來支撐,容器也就應運而生了。
王淵命認為,容器的產生其目的就是實現「應用標準化」。也就是說,將雲平台上所有應用進行打包、歸類、統一管理,青雲QingCloud開源產品經理李建盛對此有一個更加詳細的比喻:應用的容器化、版本化和標準化,徹底地改變了軟體構建方式和交互方式,它就像改變運輸方式的集裝箱一樣,能夠為貨物運輸節省船隻空間,進而使船只能夠提供更多的運輸服務。
為什麼是Kubernetes?
Kubernetes最初由Google設計並捐贈給Cloud Native Computing Foundation來使用的一個開源系統,通過將Kubernetes部署在IaaS雲上,讓用戶的應用運行在Kubernetes中,可以進一步簡化開發、操作和管理,因此也有人將其看作是基於容器技術的mini-PaaS平台
為什麼企業不能直接使用PaaS呢?相比較IaaS的日趨成熟,PaaS的發展則要滯後一些,如今的PaaS平台更多的是支撐企業的應用程序,通過開放API的方式讓用戶可以在平台上構建自己所需要的應用程序,這樣一來,PaaS與IaaS的結合就變得更加困難,或者說,PaaS目前還遠沒有成長為我們理想中的樣子:上接應用,下接IT基礎設施。
正是由於PaaS的不成熟(無法更好地實現與IaaS層的對接),容器才得以產生。王淵命認為,容器改變了以前實現PaaS的方式,等到容器發展日趨成熟,它甚至有可能變成真正意義上的PaaS,並成長為我們理想中的樣子。或者,我們可以這樣理解,目前的容器是為了更好地實現PaaS層和IaaS層的融合,未來,容器的發展將演變成理想中的PaaS。
王淵命預測,Kubernetes甚至可以被認為是伺服器端的Android,目前它遇到的場景跟10年前的Android遇到的場景類似。為什麼這麼說呢,王淵命總結出了3點原因:1、Kubernetes是開源的、是基金會的模式,有社區和廠商的廣泛參與,允許第三方廠商以盈利模式提供服務,而不會以某一家廠商獨佔;2、Kubernetes專註於API以及應用規範的制定,實現方式和應用性能可以不一樣,但面向用戶的API和規範是一樣的;3、Kubernetes有靈活的擴展性,但同時又有避免社區分裂的機制。
青雲QingCloud是怎麼做的?
早在去年11月17日,青雲QingCloud上海1區全新上線之時,青雲就在業界首創了以一套架構同時支持虛擬化和容器技術。彼時,青雲認為,如今的IaaS層架構全部基於虛擬化構建,在這樣的架構上實現對容器技術的兼容並非最優方案;而重構一套獨立架構專門用於容器技術的支持對雲平台的整體管理和維護帶來更大的壓力。
青雲通過將Kubernetes的規範跟自己的平台整合,並開源相關的插件,同時在青雲AppCenter提供一致的Kubernetes服務,也就是說,用戶可以直接使用青雲提供的Kubernetes服務,也可以自己搭建Kubernetes並安裝青雲開源的插件。
不久前的青雲QingCloud Insight 2017上,青雲推出了Kubernetes容器集群管理與編排應用,這也是青雲QingCloud基於原生Kubernetes框架提供的容器集群管理與編排應用,用戶可以基於它進行容器相關的應用開發、部署、升級,構建CI(持續集成)/CD(持續交付)應用及微服務架構等,並能實現跨機房應用的一致性。用戶可以通過QingCloud AppCenter一鍵部署Kubernetes容器服務,並提供應用全生命周期管理能力(創建、擴容、監控、健康監測等),預置多種工具插件,減輕用戶運維工作。
王淵命表示,通過對Kubernetes容器服務的優化,青雲QingCloud正在幫助企業應用更便捷地實現微服務化。如今,青雲QingCloud的AppCenter已經擁有上百款應用,並積累了豐富的應用搭建經驗。未來,青雲將會嘗試擴展Kubernetes規範,藉助AppCenter讓Kubernetes支持更多的應用。畢竟目前大多數的應用都是在Kubernetes之前產生的,很難快速遷移到Kubernetes上。【科技自媒體「常言道」出品 作者:丁常彥】
推薦閱讀:
※每天5分鐘玩轉Docker容器技術(三)
※CRI-O 1.0 簡介
※為何 Kubernetes 如此受歡迎?
※Kubernetes 是什麼?
TAG:容器 |