說起Ceph,可能更多的人還是通過OpenStack認識了它,但實際上,Ceph的誕生比OpenStack還要早上許多年。2004年,Sage Weil在加州大學Santa Cruz分校攻讀博士期間,發明了Ceph,2006年,在著名的OSDI學術會議上,Sege發表了Ceph的論文,從此,Ceph才開始逐漸為人所知。隨著OpenStack的迅速發展,Ceph搭上了OpenStack的春風,受到各大廠商的追捧,Intel、DreamHost、SanDisk、CISCO、Yahoo等公司都或多或少的參與其中。RedHat更是一擲千金,直接砸了1.75億美金將Sage建立的Inktank公司及其Ceph團隊收入囊中,將其作為IaaS三大元件計算、網路、儲存之一,Ceph從此名震天下,Ceph更是成為OpenStack後端儲存的唯一標配。
1. Ceph是什麼?
那麼,Ceph到底是什麼?它憑什麼可以成為OpenStack後端儲存的標配?要談論這個話題,恐怕沒有人能夠比Ceph專案的創始人Sege Weil先生更有資格了,而就在3月22日首次在中國舉辦的Cephalocon APAC 2018上,Sege Weil先生親自來華,因此,老孫也有幸請Sege Weil先生自己來回答了這些問題。
“2004年我創立Ceph專案的時候,當時的初衷是為一個超算中心裡面的超級計算機提供PB級儲存方案,因此,Ceph實際上是一個高效能分散式檔案系統,然後,隨著OpenStack的出現,我發現這個專案能夠為以OpenStack為核心的雲端計算提供儲存基礎設施,從而可以從僅僅為超算中心提供分散式檔案系統擴充套件到為更多的資料中心提供儲存基礎設施的支援,因此,我們開始對Ceph進行鍼對雲端計算基礎設施的改進和優化,Ceph設計之初僅針對物件儲存,而云計算不僅需要物件儲存還需要塊儲存和檔案儲存,所以這些年來,Ceph增加了對這些功能的全部支援,因此Ceph現在已經能夠充分滿足雲端計算資料中心的需求。”
2. 為什麼是Ceph?
Ceph創立的初衷並非是為了OpenStack,但Ceph最終會成為OpenStack後端儲存標配,首先當然是由於Ceph能夠與OpenStack無縫的結合,但Ceph本身在技術上的創新也是Ceph能夠取得成功的關鍵。
最關鍵的創新,是Ceph能夠同時提供物件儲存、塊儲存和檔案系統儲存三種儲存服務的統一儲存架構,因此能夠滿足不同應用需求前提下的簡化部署和運維,這是Ceph被OpenStack使用者熱衷的最主要原因。
其次,是Crush演算法。Crush演算法是Ceph的兩大創新之一,通過Crush演算法的定址操作,Ceph得以摒棄了傳統的集中式儲存後設資料定址方案。而Crush演算法在一致性雜湊基礎上很好的考慮了容災域的隔離,使得Ceph能夠實現各類負載的副本放置規則,例如跨機房、機架感知等。同時,Crush演算法有相當強大的擴充套件性,理論上可以支援數千個儲存節點,這為Ceph在大規模雲環境中的應用提供了先天的便利。
第三,Ceph中的資料副本數量可以由管理員自行定義,並可以通過Crush演算法指定副本的物理儲存位置以分隔故障域,支援資料強一致性的特性也使Ceph具有了高可靠性,可以忍受多種故障場景並自動嘗試並行修復。而Ceph本身沒有主控節點,擴充套件起來比較容易,並且理論上,它的效能會隨著磁碟數量的增加而線性增長,這又使得Ceph具備了雲端計算所應該擁有的高擴充套件性。因此,Ceph能夠獲得OpenStack使用者的青睞也就不足為奇了。
3. Ceph的未來怎麼樣?
雖然Ceph有很多優點,也被OpenStack所推崇,但Ceph並非是盡善盡美,Sege也很大方的承認了這一點,他認為,Ceph在效能、易用和節能方面還有很大的提升空間,同時,Ceph在資料去重、壓縮、同步、非同步等企業級功能方面也有所欠缺。
紅帽首席方案架構師張家駒則表示,Ceph來自於社群,Ceph社群的繁榮是毋庸置疑的,但從另外一方面講,社群是比較鬆散的結構,因此社群版的Ceph在產品的功能性,企業級特性方面都會有所欠缺,而解決這一問題的最有效途徑就是由專業的廠商,對社群版Ceph進行產品化,做出一個穩定的企業級產品。同時,專業廠商對Ceph產品的改進和優化也會回饋給社群版產品,從而保證Ceph能夠持續不斷的向前發展。
在談到Ceph的未來會不會成為今天的OpenStack時,張家駒認為,“OpenStack和Ceph是一起成長起來的,沒有Ceph,OpenStack可能也不會這麼火,OpenStack更多是在控制面,Ceph關注的則是資料面,這是兩個方向的發展,控制面技術發展到今天可能出現了一些演化的趨勢,比如出現了一些容器和其他的一些東西,但是OpenStack和Ceph有各自不同的應用場景,作為紅帽來看,我們發現控制面有逐漸演化的趨勢,但是資料面看到的只有Ceph,我們一開始從計算領域到雲到對接容器,是逐漸演化成熟的過程,所以至少在目前我們並沒有看到分散式儲存的領域裡有可以替代Ceph的技術,未來是會變化的,而作為Ceph來講,我們會不斷的適應新變化,對接新的軟體堆疊,不斷的適應新的應用場景,包括不斷的對應新型的硬體,而當硬體發生變化的時候,軟體之前的效能瓶頸就能夠自然而然的克服,我覺得Ceph目前在開源儲存領域是一個非常火爆並且非常團結的社群,所以會有眾多廠商積極參與Ceph社群的建設。我們相信Ceph的明天會更美好,而且應該是比OpenStack的發展還要更美好!”
作者:孫浩峰
原文:blog.csdn.net/sunhf_csdn/…