兩大主流開源分布式存儲的對比:GlusterFS vs. Ceph
存儲世界最近發生了很大變化。十年前,光纖通道SAN管理器是企業存儲的絕對標准,但現在的存儲必須足夠敏捷,才能適應在新的基礎架構即服務雲環境內運行。
GlusterFS和Ceph是在現代雲環境中表現最出色的兩個敏捷存儲系統。
在講述GlusterFS和Ceph的相同點和區別之前,我們先談一談雲環境中敏捷存儲的一些關鍵點。
縱向升級和橫向擴展。在雲環境中,很容易向服務器添加更多存儲空間和擴展可用存儲池。Ceph和GlusterFS都符合這一需求,讓新的存儲設備可以輕松融入現有存儲產品環境。
高可用。GlusterFS和Ceph都會使用復制方法將數據同時寫入不同存儲節點。這種運作模式會增加讀寫次數,但同時也確保了數據的可用性。以Ceph為例,數據在默認情況會被復制到三個不同的節點,確保數據副本一直可用。
通用的硬件。GlusterFS和Ceph的開發基礎都是Linux操作系統(OS)。因此,對於硬件的唯一要求就是:能夠正常運行Linux即可。由於幾乎任何商品硬件都能運行Linux操作系統,只要選擇這些存儲技術,這些技術的使用單位就可以大幅節省硬件投入。實際上,有許多公司也正在投資專用於GlusterFS或Ceph的硬件平台,因為專門優化的硬件可以更快速高效地訪問存儲空間。
去中心化。正常的雲環境絕對不會出現某個中心節點故障而引起的失效。對於存儲系統而言,這就意味着不應該使用單個中央位置來保存元數據。GlusterFS和Ceph的解決方案實現了元數據訪問分散化,從而提高了存儲訪問的可用性和冗余性。
接下來我們來談談GlusterFS與Ceph的差異和對比。顧名思義,GlusterFS是來自Linux世界的文件系統,並且完整遵守POSIX便攜式操作系統接口標准。盡管您可以輕而易舉地將GlusterFS集成到Linux的環境中,但是讓GlusterFS和Windows環境緊密配合同樣至關重要。
Ceph是一種全新的存儲方法,被定義成Swift對象存儲的一種實現。在對象存儲中,應用程序不會直接寫入文件系統,而是使用存儲設施提供的直接API訪問寫入存儲。因此,應用程序能夠繞過操作系統的功能和限制。如果應用程序已經針對Ceph存儲編寫讀寫接口,那么應用程序的讀寫就和操作系統無關。結果是,在Windows環境中集成使用Ceph存儲就和在Linux系統中一樣簡單。
當然,基於API來訪問存儲並非應用程序訪問Ceph的唯一途徑。為了實現最佳集成,Ceph也提供一個塊設備接口,可以在Linux環境中作為常規塊設備使用,使您能夠使用Ceph來模擬常規Linux硬盤。Ceph還有CephFS,這是一個針對Linux環境編寫的Ceph文件系統。
最近,SUSE已經添加了一個iSCSI接口,使得運行iSCSI客戶端的客戶端能像訪問任何其他iSCSI目標一樣訪問Ceph存儲。所有這些功能使Ceph成為異構環境的最佳選擇,而不僅僅適用於Linux操作系統。
綜上所述,Ceph是一個更容易集成到非Linux環境中的更靈活的產品。對於許多公司來說這就有足夠的理由決定在Ceph而不是GlusterFS上構建存儲產品。但是對於只需運行Linux的環境,靈活性不是重點,所以讓我們再談談其他非常重要的事情:速度。
在GlusterFS與Ceph的比賽中已經有過若干次測試,目的是證明這些存儲產品中的某一種比另一種更快,然而迄今並沒有明顯的贏家。GlusterFS的存儲算法更快,並且由於GlusterFS在節點塊中使用更多的層次化組織方式,這在某些情況下可能實現更高的速度,特別是如果和未經優化的Ceph對比的話。但另一方面,Ceph也提供了豐富的定制靈活性,這足以讓Ceph與GlusterFS同樣快速,結果就是,兩者的性能對比都不夠令人信服,不足以證實自己能完全超越對方。
最后,現實表明,Ceph獨特的存取存儲空間的方法正在使其成為更受歡迎的技術。事實證明更多的公司正在考慮Ceph技術而不是GlusterFS,部分原因也在於GlusterFS仍然與Red Hat關系密切。例如,SUSE沒有GlusterFS的商業實施案例,而Ceph已經被開源社區大量采用,市場上已經出現多種基於Ceph的產品。結論就是:在GlusterFS與Ceph的競爭戰斗中,Ceph事實上已經比GlusterFS略勝一籌。
————————————————
版權聲明:本文為CSDN博主「CloudXli」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/CloudXli/article/details/79681699