1. 程式人生 > >OpenStack Pike在微服務和擴充套件上下狠手

OpenStack Pike在微服務和擴充套件上下狠手

隨著OpenStack Pike的釋出,OpenStack基金會專注於使這一基礎軟體定義的網路環境看起來更容易理解,更適合於微服務領域。

OpenStack基金會執行董事Jonathan Bryce表示,使用者已經變得習慣於將OpenStack視為一個整體。

這就意味著不再強調,OpenStack是“由許多不同的,提供訪問計算、儲存、網路、裸機、資料中心功能的服務組成”。

Bryce補充道,與OpenStack的發展同步,像Kubernetes、Docker、OpenFlow和TensorFlow這樣的技術已經出現併成熟。他表示使用者希望將這些技術與OpenStack環境結合起來。

因此,基金會在Pike版本中突出“可組合性”:這是使OpenStack更容易使用這些服務的一種方式。

Ironic裸機服務更容易與Cinder塊儲存和Neutron網路整合。

Cinder現在可以分解為虛擬機器、裸機系統或Docker / Kubernetes容器的獨立儲存服務。

Ironic現在直接插入Neutron網路——基金會表示這對於多租戶雲端產品很重要。

Cinder塊儲存通過“恢復為快照”功能得到增強,可以更好地進行資料恢復,並且可以不需要管理員關閉虛擬機器而擴充套件儲存卷。

第二個“大主題”是Pike反映了更為成熟的部署態度——重點從”如何安裝OpenStack來構建最初的雲?”變為“如何從頭到尾地運行雲?”

使用者現在更關心生命週期問題 ,即“如何擴充套件,升級,管理故障等在雲生命週期中會發生的事情”。

Bryce表示,將OpenStack視為微服務的集合,讓使用者更有效地建立雲。當升級時,微服務模型允許管理員通過A / B測試執行滾動更新。

使用OpenStack容器的兩個關鍵工具是Kolla和Helm。

Kolla在為Pike版本做出貢獻的開發人員中變得更受歡迎(與OpenStack Octata相比,多了19%)。Bryce表示,Helm(Kubernetes的封裝管理工具)現在已經成為OpenStack服務的完整生命週期技術。

再見,Python 2

OpenStack開發社群也關注Python 2.x語言系列的棄用。雖然是2020年到期,但是還有很多程式碼要替換。

Bryce讚揚OpenStack成千上萬的開發人員讓Pike為Python 3.5做好準備的能力,讓“使用者知道他們不會揹負大量的技術債務,即執行依賴於即將棄用的語言的流程”。

“對受到監管的行業的使用者來說,這是最重要的,他們必須證明他們在做的是安全的、可管理的和使用了適當的標準。”

Pike的其他重點包括對Nova Cells v2的增強;OpenStack的分散式鎖定管理解決方案etcd v3的推出;Swift物件儲存現在支援全域性分佈的擦除程式碼,以允許單個區域在多區域網路關閉時起作用,並且確保一個區域中的故障可以使用遠端區域進行恢復。

Bryce指出,Cells v2是一項正在進行的工作,因為大型雲不是靜態的。 OpenStack的最大使用者面臨的持續挑戰是如何將雲擴充套件到非常大的規模 ——“幾百或者幾千臺物理伺服器”。

他解釋說:“每個釋出週期,問題都會發生變化。”

“Cells v2是擴充套件虛擬化環境的基本新架構。”

“你永遠無法建立一個能滿足每一個人需要的、足夠大的單個虛擬化環境,所以你需要以合理的方式擴充套件它。”

並不是每個人都以相同的方式看待這些塊——對於一個網路來說可能是環境中有多少個IP地址,對另一個來說是物理機器,對其它的來說則是虛擬機器的數量。

Bryce表示,Cells v2中的想法是,使用者可以分割其虛擬環境,每個部分都能感知其他部分,它們之間可以“智慧地對話”。

“這個專案已經進行了大約一年半,可能未來幾年還會繼續。”

Bryce說,Pike的重點是公開橫向擴充套件的功能。“每個OpenStack Nova例項從Nova Cell開始,你可以在該環境中新增額外的Nova單元,進行水平擴充套件和均衡。”

這是OpenStack社群做出的一個很大的努力。