依靠K8S實現新一代通用AP層架構
在容器商用化市場競賽上,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月將CloudContainer Service更名為Cloud Kubernetes Service,簡稱IKS。Kubernetes取代了Container,成了容器服務的新代名詞。
先讓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上的服務,搬到自己機房,而不用改變管理運維方法。企業運維人員透過GoogleCloud 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戰略佈局,不只是涵蓋了混合雲、企業私有云、KubernetesApp市場,還要讓自家無伺服器服務,能部署到GKE On-Prem上,來進入企業內部。
企業混合雲架構的最後一塊拼圖
Urs Hölzle表示,Kubernetes已經成為企業基礎架構的部署標準之一,也因此,Google現在更進一步要用GKE On-Prem軟體來補齊企業混合雲架構的最後一塊拼圖。Google新策略是將雲帶到你身邊。要讓企業內部環境(on premise)到雲端環境的管理工具能一致化,從網路到應用程式都能用同樣的管理方式。
而他沒說出口的是,如此一來,藉助GKE On-Prem軟體和Cloud Services Platform佈局,Kubernetes已經成為了企業全新的應用層,甚至可以說是新一代的應用伺服器層,未來的Kubernetes雲原生應用,可以在這一層快速部署,任意排程擴充和遷移,就像是新一代的通用AP層基礎架構。
原文:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31547898/viewspace-2213335/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 深度解析HashMap底層實現架構HashMap架構
- OIDC及其在RESTful AP與SPA架構下的SSO實現思路(第一版)REST架構
- 如何構建通用 api 中間層API
- 三層架構理解架構
- NAS層架構03架構
- 汽車之家Unity前端通用架構升級實踐Unity前端架構
- TencentHub的架構實現架構
- 如何構建通用儲存中間層
- 層次式架構案例架構
- 分層架構和SOA架構
- MVC 與三層架構MVC架構
- Kotlin如何實現MVP架構KotlinMVP架構
- 如何實現彈性架構架構
- k8s高可用架構K8S架構
- 唯品會架構師是如何實現架構重構的架構
- nacos註冊中心單節點ap架構原始碼解析架構原始碼
- RESTful架構和實現級別REST架構
- Next Blockchain System架構實現-bitswapBlockchain架構
- 六邊形架構 Java 實現架構Java
- 為 Luy 實現 React Fiber 架構React架構
- 【架構與設計】常見微服務分層架構的區別和落地實踐架構微服務
- .Net微服務實戰之技術架構分層篇微服務架構
- 新一代雲原生日誌架構 - Loggie的設計與實踐架構
- 探索小程式底層架構原理架構
- 4+2 分層架構 - Ricardo架構
- 架構師之路-https底層原理架構HTTP
- 軟體架構分層方法論架構
- Vue底層架構及其應用Vue架構
- 前端架構思想:聚類分層前端架構聚類
- 區塊鏈的底層架構區塊鏈架構
- docker架構和底層技術Docker架構
- 貝葉斯推斷架構實現架構
- MHA高可用架構的實現方式架構
- Ocelot+Consul實現微服務架構微服務架構
- MySQL 實現高可用架構之 MHAMySql架構
- Kafka ACL實現架構以及實操案例剖析Kafka架構
- 架構師必備:巧用Canal實現非同步、解耦的架構架構非同步解耦
- k8s架構與元件詳解K8S架構元件