OpenStack or Kubernetes? Better together! (下)

OpenStack or Kubernetes? Better together! (下)

Overall Solution

談到提出方案,轉移、管理、成熟度,系統效能即變成重要環節,這也是 OpenStack 與 Kubernetes 並存的核心價值。

轉移

從一開始的轉移,客戶原先提供的服務環境不外乎裸機、虛擬機與容器。三者都有機率無法互相轉換,或是轉換耗費工時與人力而無法立即完成。在這個狀態下,必須能提供完善的轉移方案,畢竟不是所有使用者都有足夠的資源去進行破壞性建構。因此,轉移的成功率未必是使用者接受的關鍵,卻是影響平台能不能活下去的要素。在此前提下,將 OpenStack 與 Kubernetes 混用所帶來的轉移能力即可受用於多數建置案例。多數原先環境,較能無痛轉移至 OpenStack,接著在根據內部需求與轉移狀況評估三種環境的比例,在將需要的容器環境服務帶到 Kubernetes 上運行。

管理

管理操作的範圍與友善度,一直是使用者在乎的環節,操作概念與原先使用的環境勢必有所出入。如何有效管理環境,不導致使用者在多個不同平台上,形成各自控制平台或管理環境的局面,將是非常關鍵的議題。針對此議題,OpenStack 已有建置與管理 Kubernetes 平台的能力,而在 Kubernetes 平台上亦有建置與管理 OpenStack 平台的能力,透過平台互管之方式,省略許多管理上的重工。

系統效能

最後系統上線前,能否達到原先規劃的效能,而在系統架構層面上,就是系統規劃。如同上面所提到的三種使用環境(裸機、虛擬機與容器),此外必須有能力對應實體資源與虛擬資源(軟體定義資源)。針對容器環節,使用者可以在 Kubernetes 的操作下以軟體定義的方式劃分資源(例如:網路與儲存),與管理資源之間的通訊能力。針對裸機與虛擬機,OpenStack 除了軟體定義資源外也提供 QoS 相關服務,包含可全方位設定 (Config) 的環境,讓環境調校上更具變動性。針對所需要的效能與資源調度,可動態的在裸機、虛擬機與容器上自由調動,可謂目前 OpenStack + Kubernetes 最大的優勢之一。

成熟度

產品成熟度決定產品的週期。檢視目前OpenStack的發展,已具有相當程度的成熟度。對於選擇雲端平台上,最終在於該平台是否能符合使用者現有環境的整合,以及該平台是否在未來會消失?目前主流的 No vendor lock in 架構在 OpenStack 環境下,已可不用擔心被任何軟硬體廠商綁架,Kubernetes上亦有此特性,選擇上接著就是考量研發穩定度。依照目前兩個社群都具有絕對的研發能力(優於目前市面上多數的 open source 平台)。OpenStack 社群提供的測試環境,也擔保基本的使用與研發能力,能以百分之百的測試率,通過Linux Foundation 的 Core Infrastructure Initiative (Most security) 認證,代表它已具備足夠的實力。

Biggest Use Case

以 OpenStack 領域中最有名的學術案例「CERN」而言,同時也是OpenStack與Kubernetes的整合案例 。在OpenStack Summit 上 CERN 已正式公開其運用OpenStack Magnum 整合 Kubernetes, Swarm, 及 Mesos,  從而進入擁有兩千名以上使用者的營運環境(Superuser 報導)。在環境之內,光是原先的OpenStack 運算節點即達一千兩百多台,總共兩萬台虛擬機器(與其工程師聊天時,也得知目前已遠遠超越此規模)。在此前提下,透過 Puppet 將 Magnum 裝入OpenStack環境時,苦工多半在如何將新服務(Magnum)所需要之套件,在影響環境最小的狀態下加入既有系統。後續的Kubernetes服務則直接交由 Magnum處理即可。因此Magnum裝設完成後即可建立多個Kubernetes Cluster,並直接將 CERN 內部已跑在 Docker 上的服務轉移至Kubernetes或其他 COE之上。另外針對其他服務,則依照前段提到的轉移規劃,選擇適合的環境與計畫,於三種環境下繼續運行。

總結

上述簡單說明了實際運行案例、架構融合度及其他轉移考量。對於企業服務來說,採用混和兩種大方向架構為一體的雲端架構,將在未來更具潛力。

目前投資於兩架構之間的研發能量,不論在商業或社群上都已不容小覷。至於如何將他人的成功案例轉為自己的實際案例,則有賴於專業規劃。開放式雲平台與既有的虛擬化平台相比,則可從硬體或授權等省下的費用,取一部分培養自己的雲端管理人力。徹底跳脫 Vendor lock in 的可能。OpenStack 加上 Kubernetes 或是兩者擇一,則取決於各位接下來所創造的新故事,也期盼各位將故事分享給更多人知道,畢竟不論是 OpenStack 或是 Kubernetes, 皆需要各位使用者案例及使用者需求來進入開發週期,達到未來完美整合的願景。

撰文 林冠宇

訂閱電子報

Select list(s)*

 

Loading