我們?cè)诘谝徊糠帧度萜鲿r(shí)代的存儲(chǔ)問題:插件是救世主嗎?》中指出了容器的存儲(chǔ)問題愈發(fā)嚴(yán)重,去年Docker發(fā)布了Docker 1.9版本,邁出了重要的一步,采用插件方式增加了對(duì)永久性存儲(chǔ)的支持。除了插件方式是否還有更多的解決方案?
持久性之外
Rancher Labs是一家為容器提供基礎(chǔ)設(shè)施運(yùn)營(yíng)軟件的公司,該公司的聯(lián)合創(chuàng)始人兼CEO Sheng Liang說,即便推出了卷插件,目前容器環(huán)境支持的存儲(chǔ)功能仍舊有限。
他認(rèn)為,盡管卷插件是一個(gè)很好的起點(diǎn),除打開、關(guān)閉、讀、寫功能外,Docker生態(tài)系統(tǒng)最終還要增加額外的功能。例如如何生成快照或者制作備份。
Docker自己也承認(rèn)會(huì)推出更多的存儲(chǔ)卷插件。Docker在1.7版本中公布了存儲(chǔ)卷插件,但直到1.9版本才開始被普遍使用。Docker產(chǎn) 品管理與設(shè)計(jì)高級(jí)副總裁Scott Johnston說:“存儲(chǔ)卷插件在易用性、靈活性、差異化方面有很多的迭代。這是個(gè)很不錯(cuò)的開始,但并不意味著沒有其他工作要做了。例如,Docker 還不支持在線遷移,而該功能在生產(chǎn)環(huán)境中至關(guān)重要。”
CoreOS公司推出了與Docker競(jìng)爭(zhēng)的容器引擎Rocket以及構(gòu)造業(yè)務(wù)流程框架,該公司的CEO Alex Polvi認(rèn)為需要考慮建立容器生態(tài)系統(tǒng)。即使已經(jīng)在容器引擎級(jí)實(shí)現(xiàn)了數(shù)據(jù)卷管理器,但在集群級(jí)實(shí)現(xiàn)數(shù)據(jù)卷管理器非常重要。因此考慮容器的組織必須探索容 器管理系統(tǒng)比如Mesos、Docker Swarm以及Kubernetes如何在容器與底層數(shù)據(jù)卷之間建立映射。
盡管沒有Kubernetes這樣的工具也能夠運(yùn)行容器化環(huán)境,但如果你計(jì)劃對(duì)環(huán)境進(jìn)行擴(kuò)展,那么不借助工具并不是個(gè)好主意。Polvi說一切都處于動(dòng)態(tài)變化之中,任何存儲(chǔ)系統(tǒng)都應(yīng)該能夠支持容器的動(dòng)態(tài)特性。
XtremIO是一家提供scale-out全閃存存儲(chǔ)平臺(tái)的公司,該公司的CTO Itzik Reich說IT運(yùn)營(yíng)團(tuán)隊(duì)正在計(jì)劃大規(guī)模使用容器。最近他們?yōu)橐患掖笮豌y行客戶演示了一個(gè)由XtremIO存儲(chǔ)、ClusterHQ Flocker驅(qū)動(dòng)以及Mesosphere/Marathon調(diào)度與編排所組成的demo。盡管該客戶至少領(lǐng)先兩代,但他們?cè)诜e極地評(píng)估容器技術(shù)。他們 希望要的是可以真正使用的技術(shù),而不是等待第一批訂單。
做好準(zhǔn)備吧!
當(dāng)這些生產(chǎn)工作負(fù)載開花結(jié)果,預(yù)計(jì)會(huì)給存儲(chǔ)帶來(lái)哪些壓力?
Docker的Johnston說,與傳統(tǒng)的虛擬機(jī)不同,容器沒有給底層存儲(chǔ)子系統(tǒng)施加過大的壓力。容器與虛擬化面臨的問題有所不同。虛擬機(jī)模擬底 層硬件——比如CPU或I/O子系統(tǒng)——容器在資源之間創(chuàng)建隔離邊界。因此,容器為CPU以及IO提供了“原始性能”,只有很少的網(wǎng)絡(luò)開銷(5%)。
考慮到容器共享操作系統(tǒng)的單個(gè)副本,與虛擬機(jī)相比,組織也往往會(huì)在每臺(tái)服務(wù)器上運(yùn)行更多的容器。這會(huì)增加存儲(chǔ)系統(tǒng)的密度,導(dǎo)致問題出現(xiàn)。因?yàn)槿萜鲙缀蹩梢约磿r(shí)啟動(dòng),因此資源需要實(shí)時(shí)可用。
例如,在Portworx的案例中,通過針對(duì)容器的分層文件系統(tǒng)進(jìn)行優(yōu)化,其存儲(chǔ)系統(tǒng)在密度以及突發(fā)負(fù)載方面面臨的挑戰(zhàn)很小。其軟件定義的存儲(chǔ)堆棧目前正在測(cè)試,預(yù)計(jì)今年夏天可以使用。
位于美國(guó)加州的Hedvig公司同樣制作了分布式scale-out軟件定義存儲(chǔ),并認(rèn)為可擴(kuò)展性對(duì)容器環(huán)境至關(guān)重要——下一代應(yīng)用比如 Cassandra以及MongoDB經(jīng)常會(huì)在這樣的環(huán)境下運(yùn)行。Hedvig的營(yíng)銷副總裁Rob Whiteley說這對(duì)不能預(yù)測(cè)三、五個(gè)月之后需求的客戶非常重要。系統(tǒng)還提供了可以應(yīng)用于容器、應(yīng)用或者虛擬機(jī)的高級(jí)存儲(chǔ)策略,以及一種固有的多站點(diǎn)體 系架構(gòu),用于內(nèi)置災(zāi)難恢復(fù)。
“Packet正在提供方便用戶使用的容器友好型存儲(chǔ)。用戶去年使用產(chǎn)品時(shí)需要?jiǎng)?chuàng)建他們自己的存儲(chǔ),但大多數(shù)用戶太懶或者太害怕。”Smit說, “他們?nèi)耘f想要靈活的、具備安全性與可控性的塊服務(wù)。”因此,Packet現(xiàn)在為用戶提供塊存儲(chǔ)Datera,提供形式有兩種(“緩慢龐大”或者“快速小 巧”),數(shù)據(jù)放置及分層是在Datera平臺(tái)存儲(chǔ)中實(shí)現(xiàn)的。
抽象及自動(dòng)化級(jí)別可能預(yù)示著容器對(duì)存儲(chǔ)的巨大影響:根本不必考慮存儲(chǔ)。正如容器使開發(fā)者不用再擔(dān)心在哪個(gè)版本的Linux上構(gòu)建他們自己的應(yīng)用,作為一名應(yīng)用開發(fā)人員,你不用再為需要IOPS達(dá)到700的上TB的存儲(chǔ)空間而擔(dān)憂。
分享到微信 ×
打開微信,點(diǎn)擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁(yè)分享至朋友圈。