1. 程式人生 > >使用Kubernetes和Mirantis容器化OpenStack以緩解運維挑戰_Kubernetes中文社群

使用Kubernetes和Mirantis容器化OpenStack以緩解運維挑戰_Kubernetes中文社群

【編者的話】Swapnil是印度著名的記者和作家,其領域橫跨Linux和開源軟體。同時他也是印度有名的科幻作家。本文是他採訪Mirantis公司關於Kubernetes融合OpenStack方面的實踐。

經過諸如AT&T、Verizon、BMW、Volkswagen and Walmart等巨頭的持續治理,OpenStach正快速成為一個核心建造元件,以幫助那些正在構建以私有云為基礎設施的公司。當部署OpenStack變得相對容易時,擴充套件,管理和運維依然面臨較大的挑戰。

“OpenStack存在這個問題已經由來已久了,社群並沒有將足夠的精力投入在解決管理OpenStack上。當雲已經安裝完成,如何保證它不會崩潰,如何打補丁,如何去升級?”Boris Renski,OpenStack分銷商Mirantis的聯合創始人兼市場部Leader在一次採訪中這樣說道,“由於這個原因,企業根本不能穩定地執行OpenStack。他們可以安裝它,這沒問題。但是過了一個月它忽然停了,然後沒有任何人有線索去修復它。”

但是隨著容器技術的出現,這種情況出現了一些轉機。畢竟Google在容器中釋出它們所有的產品。即使如Google Cloud,它是一個IaaS,也在共享式容器管理平臺Borg中被髮布。

“Google執行他們所有的系統,包括Google Cloud,以這種特別的方式,這種方式完美解決了困擾他們多年的問題。”Rendki接著說,“Kubernetes是他們釋出的一個工具,它可以‘Google式’地執行一個大規模分散式系統”。

“我們正在採用這種‘Google式’的方法來執行軟體並且使OpenStack架構現代化以貼合這種趨勢,從而使OpenStack更加穩定且易於管理”,他接著說道。

通過包裝OpenStack的服務使它們能夠被Kubernetes管理,Mirantis正著手解決許多OpenStack的橫向擴充套件,管理和運維等方面的挑戰。使它在理論上可以像微服務一樣具有很強的擴充套件性。

在最近的OpenStack Summit上,CoreOS釋出了一款名為Stackanetes的專案,它被設計為在你的基礎設施上執行OpenStack就像執行一個應用程式一樣。事實上,Stackanetes使用了Kubernetes編排引擎去管理分散式的OpenStack的釋出過程。

現在Mirantis正將以上相似的功能帶入OpenStack中,通過一個已經存在的叫做Fuel的OpenStack專案。Mirantis通過與Google和Intel的合作重寫了Fuel-這個OpenStack的生命週期管理工具-去使用Kubernetes來作為它的底層編排引擎。

就像真正的開源專案的典型做法一樣,Mirantis在CoreOS對於Fule的重構的基礎上開展工作。“我們將會採用一部分(CoreOS)已經完成的成果,Stackanetes就像我們與Intel和CoreOS合作開發幾個月之前的東西,並且它是一個相似功能的早起驗證產品,同時被構建於任何社群之外,是單獨為CoreOS定製的產品”,Renski說道。“我們期待繼續與CoreOS保持一開始那樣的合作,即使我們已經宣佈與Google和Intel展開合作以後。並且繼續可以獲得Stackanetes中的一些改進特性。”

根據今年早前的一個採訪中,CoreOS的CEO Alex Polvi的表述,Stackanetes並不是CoreOS的產品,它是一個像Kubernetes一樣的開源專案。

“在Stackanetes上,我們與包括Mirantis在內的OpenStack社群的合作由來已久。Stackanetes是一個端到端的OpenStack Nova和Kubernetes相關元件的部署管理器。我們計劃繼續與上游OpenStack廠商合作,”他說道。

“隨著Docker作為容器映象格式的標準和Kubernetes作為容器編排的標準的出現,我們最終看到了人們是怎樣找到了分散式應用的運維之道的。將Kubernetes和Fuel進行組合將為OpenStack開啟一扇全新的應用分發之門,它將帶來更快的升級消耗,幫助客戶獲得更快的成果,”Renski說道。

根據這家公司的描述,最終的解決方案將會是一個統一的平臺來管理虛擬機器,容器和裸機系統。這個平臺將能動態控制OpenStack的運維和生命週期管理。

“這在技術上是可行的,並且我們很興奮的看到越來越多的OpenStack社群成員開始支援Kubernetes來發布和管理OpenStack,”Polvi說道。

隨著應用被打包,使用者對於服務將會獲得一個細粒度的控制,使他們能夠實踐OpenStack的滾動更新,並使OpenStack控制面板能夠自愈,更加穩定。它進一步可以讓在OpenStack上建立微服務應用變得更加容易。他們將會獲得一個統一的結構去同時執行虛擬機器和原生容器負載。

容器化的格式同樣允許Mirantis將升級後的容器持續的釋出到客戶的預釋出環境中,客戶可以將該環境提升為生產環境。

“Mirantis的OpenStack將會變成一個統一的,持續地滾動的釋出版本”Renski這樣說。Mirantis同樣將會啟動一個新的持續整合(CI/CD)管道,使用OpenStack Fuel工程來構建容器化OpenStack釋出和運維的能力。

隨著Kubernetes成為Mirantis戰略的基石,公司將計劃為Kubernetes投入更多。

“Intel和Mirantis聯合開源的領導力將彌合OpenStack和Kubernetes社群之間的鴻溝,”Intel軟體定義基礎設施集團副總裁兼總經理Jonathan Donaldson這樣說。“我們的共同努力會使兩個具有互補性且強大的開源社群聯姻,從而更便於企業去管理私有云”

===========================================

譯者介紹
高洪濤,噹噹網架構師,開源資料庫分庫分表中介軟體Sharding-JDBC作者。目前從事Docker相關研究工作。