開(kāi)源已被成功地用作開(kāi)發(fā)操作系統和數據庫的模型。將社區開(kāi)發(fā)模型應用于共享和持久存儲需求是非常有意義的。
開(kāi)源軟件一直是推動(dòng)協(xié)作、基于社區的軟件的重要力量。其中最明顯的例子就是Linux的發(fā)展歷程,它的各種發(fā)行版已經(jīng)成為云操作系統和現代應用程序開(kāi)發(fā)人員的首選平臺。

在更高的堆棧中,同樣的理念應用于Docker容器化,以及用于結構化SQL,NoSQL等數據庫平臺。那么,存儲呢?開(kāi)源軟件開(kāi)發(fā)的演進(jìn)是否也應用于存儲,或者有哪些可用于那些想要在存儲中實(shí)現開(kāi)源的選項?
開(kāi)源技術(shù)定義
首先,為大家解釋一下開(kāi)源的定義。根據定義,開(kāi)源就意味著(zhù)產(chǎn)品的源代碼可以自由地被任何人訪(fǎng)問(wèn)和讀取。然而,大多數開(kāi)放源碼技術(shù)項目都是根據許可條款編寫(xiě)代碼,許可證決定了代碼如何被使用或重復使用,有什么屬性,又如何覆蓋專(zhuān)利以及能被允許用作哪些商業(yè)用途。
這對存儲軟件開(kāi)發(fā)意味著(zhù)什么?實(shí)際上,開(kāi)發(fā)一個(gè)存儲平臺與開(kāi)發(fā)其他任何軟件沒(méi)有什么不同。因此,開(kāi)放源代碼對存儲有很大的意義,因為它允許在復雜問(wèn)題上進(jìn)行大規模協(xié)作,同時(shí)在持久模型中100%保證數據的準確性。
社區發(fā)展
開(kāi)源已被成功地用作開(kāi)發(fā)操作系統和數據庫的模型。將社區開(kāi)發(fā)模型應用于共享和持久存儲需求是非常有意義的。
對于開(kāi)源來(lái)說(shuō),存儲并不是首選,因為大多數早期共享存儲平臺都是在專(zhuān)用硬件上開(kāi)發(fā)的。然而,在過(guò)去15年中,服務(wù)器和存儲媒體的商品化已經(jīng)發(fā)展到成本足夠低,可靠性足夠高的情況,能從現成的組件中構建存儲平臺。隨著(zhù)軟件定義存儲(SDS)的火熱,開(kāi)源存儲也開(kāi)始邁出發(fā)展的步伐。
為什么要開(kāi)源存儲
作為終端用戶(hù),有什么理由讓你使用開(kāi)源存儲技術(shù)?與商業(yè)SDS一樣,開(kāi)源存儲將購買(mǎi)硬件與軟件分開(kāi)。這樣就可以為硬件提供源代碼,構建和設計,以獲得成本和運營(yíng)優(yōu)勢,例如最小化必須支持的硬件平臺數量。
開(kāi)源存儲平臺的進(jìn)一步發(fā)展,消除了存儲軟件的資本支出。剩下需要考慮的就是決定是否以及如何支付支持。 事實(shí)上,獲得供應商或增值經(jīng)銷(xiāo)商的支持是大多數企業(yè)在使用開(kāi)源存儲軟件時(shí)必須面對的主要問(wèn)題。
幸運的是,支持模型是存在的。例如,Red Hat(紅帽)公司擁有一個(gè)蓬勃發(fā)展的業(yè)務(wù),用以支持自己的Red Hat Enterprise Linux(RHEL),它可以從Fedora發(fā)行版獲得商業(yè)上的應用。反過(guò)來(lái),RHEL則作為開(kāi)源技術(shù)在諸如CentOS等發(fā)行版中獲得。
運行開(kāi)源存儲提供了與標準商業(yè)存儲產(chǎn)品相同級別的靈活性。可以在生產(chǎn)環(huán)境上運行商業(yè)上支持的開(kāi)源存儲系統版本。這樣,測試和開(kāi)發(fā)可以使用內部支持的存儲部署來(lái)運行。這種方法節省了大量的成本,特別是對于需要橫向擴展對象存儲的非結構化數據。
貢獻者回饋
當然,開(kāi)源技術(shù)的全部意義就是回饋社區。所以每個(gè)人都可以自由地為我們討論的平臺的發(fā)展做出貢獻。
對于大型企業(yè)來(lái)說(shuō),讓開(kāi)發(fā)人員參與編寫(xiě)開(kāi)源存儲軟件是有意義的。 這樣,他們就可以獲得內部支持軟件的機會(huì ),無(wú)論是完全沒(méi)有廠(chǎng)商支持,還是進(jìn)行開(kāi)發(fā)測試,都可以直接整合新功能。對于長(cháng)期部署(如存檔和備份),參與維護開(kāi)放源代碼平臺有助于減輕供應商中斷商業(yè)產(chǎn)品發(fā)行的風(fēng)險。
建立你自己的開(kāi)源產(chǎn)品
除了選擇使用商業(yè)支持的開(kāi)源產(chǎn)品,另一個(gè)選擇是從開(kāi)源組件(如Linux iSCSI目標或Linux上的SMB)構建自己的開(kāi)源產(chǎn)品。你可以使用這些文件來(lái)為你的存儲基礎設施提供文件和塊服務(wù),特別是與ZFS文件系統配合使用。 但是,除了開(kāi)發(fā)者社區之外,你將不會(huì )得到任何支持。