在容器商用化市場競賽上,Docker以簡單易用的封裝設計,掀起了容器技術的浪潮,甚至Docker後來成為了容器技術的標準,也帶動了IT架構下個十年的變革。
雖然早在2006年就開始發展容器技術的Google慢了一步,但每周至少啟用20億個容器的大規模部署經驗,讓Google走上了另一條容器發展之路,也就是以提供大規模容器調度和叢集管理為主的Kubernetes計畫。
4年過去了,Docker和Kubernetes的地位顯然互換了,過去Docker是最多人琅琅上口的容器技術名詞,現在主角則變成了Kubernetes。雲端教父AWS雲端架構策略副總裁Adrian Cockcroft曾指出,兩者雖然都是運用容器技術,但最大的差異是,Docker是要解決應用程式開發(Developing)的問題,而Kubernetes則是要解決更上層的應用程式維運問題(Operation)。開發問題是早期的痛點,但隨著企業越來越依賴容器技術,內部應用越來越多是雲端原生應用時,維運會是企業IT的新痛點,他強調。
維運管理需求是Kubernetes後來居上的關鍵
因為雲端原生應用大多採用微服務架構設計,結合容器技術,一支應用程式往往需要數十,甚至複雜者要上百個容器化微服務程式組成,企業若有1百支應用,就得管上數千,甚至上萬個容器化微服務,維運管理就成了最大的挑戰。這正是後來主打大規模容器叢集管理的Kubernetes後來勝出的關鍵。
企業商軟大廠也紛紛加入Kubernetes平臺戰局,不論是在雲端服務或是私有PaaS平臺上,來發展自家的Kubernetes產品。像微軟更直接找來Kubernetes共同創辦人Brendan Burns,負責率領Azure容器服務團隊,自家混合雲產品Azure Stack也大力支援Kubernetes。IBM同樣也靠以Kubernetes為核心的PaaS軟體IBM Cloud Private,要來搶攻企業私有雲容器平臺市場,尤其是微服務管理需求。
很早就壓寶Kubernetes的紅帽,在2015年推出的OpenShift 3.0版中,不惜放棄自家容器調度工具,開始支援Kubernetes,現在更成為了要通吃跨多雲、混合雲架構,又能通吃裸機、容器和VM的企業級通用應用管理平臺。而虛擬化龍頭VMware也不落人後,近來也改力推主打通吃多家IaaS公雲和Kubernetes叢集管理的容器服務PKS軟體。連甲骨文都在旗下雲端服務支援Kubernetes。
而雲端容器代管服務這兩年更進入了新的競爭階段,不少雲端業者相繼將自家容器代管服務中的Container,改由Kubernetes取代,例如Azure的ACS早在去年就換成了AKS,或像IBM則是今年5月將Cloud Container Service更名為Cloud Kubernetes Service,簡稱IKS。Kubernetes取代了Container,成了容器服務的新代名詞。
Google計畫先讓Helm格式成為Kubernetes App封裝格式
但是,Google的Kubernetes布局,遲遲沒有跨出雲端,除了積極參與Kubernetes開源專案之外,就是全力發展GKE,試圖打造出雲端容器代管服務領導者的地位。直到今年Next雲端產品大會舉辦前一周,Google低調地發布了一個消息,將原本GCP的服務快速安裝入口網站(Cloud Launcher)更名為Google Cloud應用市集,開始賣起來各種第三方軟體廠商開發的商業軟體。
其中最特別的是,這個App市集中設置了企業級Kubernetes App類型,也就是Kubernetes App市集。使用GCP的企業,可以直接在這個App市集,購買想要用的Kubernetes App。Nginx、Spark、Elasticsearch、WordPress、Cassandra等13家軟體公司,開始透過Kubernetes App的形式銷售企業級軟體。
Google還預告要制訂一個Kubernetes App的標準,就像OCI容器映像檔那樣的容器應用打包形式,Google試圖要讓透過Kubernetes封裝管理套件Helm打包的Kubernetes App也能成為一種流通用的封裝格式。
不同Docker容器化應用,得將所有程式封裝到單一個映像檔中,Helm可以將組合一支應用系統的多個微服務程式各自的映像檔,打包到一套應用程式包中封裝,更符合大型企業應用或複雜雲端原生應用的需求。
和Helm封裝形式的通用化和專用市集形式的出現,讓Kubernetes App成了容器化應用的新格式,這是Google新一代AP層的成形,打下第一個基礎。
GKE On-Prem主機首次公開
到了Next大會第一天開場演講中,正當Google現場示範如何管理部署在兩地的GKE容器叢集時,突然秀出其中一套GKE的部署地點,竟然就在Next大會舉辦地點Moscone Center。隨即,舞臺上也出現了這臺GKE主機,Google Cloud雲端基礎架構資深副總裁Urs Hölzle當場宣布,雲端GKE服務將推出軟體版本GKE On-Prem,可安裝於企業內部機房伺服器中。
Urs Hölzle宣布,Google將以GKE On-Prem軟體,搭配開源微服務管理平臺Istio,組成一套混合雲軟體稱為Cloud Services Platform。GKE On-Prem的管理介面和雲端GKE服務完全相同,企業可以將雲端GKE上的服務,搬到自家機房,而不用改變管理維運作法。企業維運人員透過Google Cloud Console就可以同時管理雲端的GKE服務和部署於自家機房的GKE On-Prem環境。
而Istio則是一套採取服務網格(Service Mesh)架構,來管理大量微服務的軟體,可以將多個Kubernetes叢集,集中到單一套服務網格中,來管理,並能支援跨Kubernetes叢集連線,也能確保每個叢集都套用一致的管理政策。不只Google,紅帽同樣也在自家OpenShift上要支援Istio,同樣都是看上企業未來大量微服務管理的需求。
不只如此,GKE On-Prem軟體也強化了多項混合雲整合機制,如企業可使用也可和雲端GKE整合,不用建立複雜VPN。另外也可通用雲端身分或自家身分驗證服務來登入GKE On-Prem。
運算工作可以跨不同GKE雲端叢集或自建GKE叢集間移動。企業可自建一個本地端Prometheus來監控GKE On-Prem,也可用雲端的Stackdriver服務來監控本地端的GKE On-Prem叢集。
不同於雲端GKE,本地端GKE軟體可存取持久性儲存服務來部署大型應用,例如複雜的資料庫。Google雲端部署工具Cloud Build也可用來部署本地端GKE On-Prem上的容器應用。而Kubernetes應用市集上的Kubernetes應用,果不其然,也可部署到本地端的GKE On-Prem環境中。
Google的Cloud Services Platform戰略布局,不只是涵蓋了混合雲、企業私有雲、Kubernetes App市集,還要讓自家無伺服器服務,能部署到GKE On-Prem上,來進入企業內部。
Google企業混合雲架構的最後一塊拼圖
Urs Hölzle表示,Kubernetes已經成為企業基礎架構的部署標準之一,也因此,Google現在更進一步要用GKE On-Prem軟體來補齊企業混合雲架構的最後一塊拼圖。他強調,Google新策略是將雲帶到你身邊。要讓企業內部環境(on premise)到雲端環境的管理工具能一致化,從網路到應用程式都能用同樣的管理方式。
而他沒說出口的是,如此一來,藉助GKE On-Prem軟體和Cloud Services Platform布局,Kubernetes已經成為了企業全新的應用程式層,甚至可以說是新一代的應用伺服器層,未來的Kubernetes雲端原生應用,可以在這一層快速部署,任意調度擴充和遷移,就像是新一代的通用AP層基礎架構。
相關報導 Google Cloud落地大進擊
熱門新聞
2024-11-18
2024-11-12
2024-11-19
2024-11-15
2024-11-15