六問Ceph:在中國的發展還有哪些障礙?
中國首場Ceph Day于2015年6月6日在北京由Intel和RedHat聯合舉辦,吸引了約200人參加。《 Ceph Day中國首秀,哪些技術趨勢最值得關注? 》一文總結了當日演講嘉賓和圓桌會議談到的Ceph重要技術趨勢,本文基于與Intel和Redhat相關負責人的交流,補充說明Cpeh的一些發展問題,并分享Ceph Day的調查問卷結果匯總,讓大家對Ceph在中國的發展和應用狀況有一個更清晰的認識。
為什么是Ceph
Intel大數據技術組總經理馬子雅分享的一項調查結果顯示,Ceph是非常受歡迎的開源存儲軟件, Ceph RBD 在塊存儲層面受歡迎的程度遠遠超過了LVM、GlusterFS等,并且最近半年中這個差距正在擴大。這個結果,與原本預計百人規模的Ceph Day活動卻迎來近200人到場的情況相吻合。按照馬子雅的觀點,開源存儲是數據量及數據復雜性瘋長的良藥,但開源存儲為什么一定是Ceph呢?Ceph 和其他的存儲技術各自最終的市場份額會是多少?
Ceph RBD大受歡迎
Intel亞太研發中心云計算及大數據實驗室經理段建剛認為,首先開源技術在云計算大數據領域的未來很好,其次存儲是非常基礎的需求,Ceph具 有同時支持塊、文件和對象的先進架構,在穩定性、可管理性上有很強的優勢,同時性能也可以滿足用戶需求,已經獲得很多國外用戶的青睞,所以Intel看好 Ceph的未來。這也是Intel從2012年開始選擇大力投入Ceph社區的原因。
來自RedHat的Ceph社區總監Patrick McGarry談到,所有人都需要存儲,尤其是在這個大數據時代,而Ceph是不錯的技術,如沃爾瑪、Yahoo!等,基本各個行業都有用戶在使用Ceph。
Ceph社區總監Patrick McGarry
Patrick McGarry認為,商業存儲和開源存儲當前各有市場。但開源代表創新的方向,傳統企業的一些痛點,需要Ceph這樣的技術來解 決。開源技術發展很快,而傳統企業非常care穩定性、安全性,又不能像互聯網企業一樣在試錯中不斷改進,RedHat的開源商業化定位,就是做一個“穩 定器”,讓用戶可以更好地消費開源技術,讓傳統企業更加容易接受開源。
對于GlusterFS,Patrick McGarry談到,GlusterFS和Ceph都是RedHat先后并購的技術,由于發展路線不 同,前者在FileSystem更強一些,后者在object更強,用戶可以看usecase選擇。但RedHat將會在GlusterFS和Ceph之 上提供一個USM統一存儲管理產品,為同時使用兩個技術的用戶提供更上一層的管理工具。
相對于Swift,Patrick McGarry認為,Ceph具有框架或者platform的優勢,提供block、object層和文件系 統的支持,可擴展性也非常好,在一個大的cluster中只要加一個OSD就可以擴展,device損壞也可以自動添加和修復,不需要用戶配置,而 Swift只是OpenStack底層的對象存儲支持。
Ceph的近期規劃
Patrick McGarry強調了Ceph的獨立性與開放性。RedHat收購了inktank,Ceph的研發仍遵循LGPL開源協議,不 會有太多的商業行為。RedHat也信奉100%開源的文化,重視貢獻、分享,同時也歡迎更多的人參與到Ceph的開發,而不是要像獨裁者一樣控制 Ceph,現在的KVM就是很好的例子。在特性方面,加強文件的支持,也就是CephFS將是今年的重點。而CephFS和容器的整合,也是與會人員期待 的一個方向。
Ceph與其他開源技術
這里說的其他開源技術主要指OpenStack,Ceph的發展與OpenStack的關系比較緊密,經過一年多的發展,Ceph已經成為 OpenStack的首選存儲方案,并且目前Ceph80%的代碼都來自于與OpenStack相關的項目,Cpeh會在block層和object層和 OpenStack結合。不過根據Patrick McGarry的經驗,Ceph已經不僅僅應用于OpenStack環境之中,在OpenStack領 域之外Ceph也獲得了快速的增長。同時Ceph有一個Gateway,支持讀取Swift、Amazon S3的存儲,使得用戶可做不同的選擇。
其次是Container,尤其是Docker,已經成為云計算領域繞不開的開源技術。Patrick McGarry表示,Docker快速地 集成發布,從pull到push,Ceph將在后端的backup提供支持,同時我們還可以在Docker中做Ceph的一些鏡像測試。此 外,CephFS今年也將要實現用于生產環境的目標。RedHat相信,Ceph作為最流行的開源存儲技術,未來與最流行的容器技術Docker的結合, 將會更加緊密。
Ceph在中國
中國Ceph社區的貢獻者主要來自RedHat和Intel。RedHat的主導地位不用多說,在上海有研發團隊。Intel的Ceph研發團隊 都在中國,投入30多人,包括兩位core(其中一位是分享NewStore存儲后端的設計與實現的陳曉熹),代碼貢獻量在2015年排名第二,其中包括 一些重要特性。Intel主要做三個方向的工作:原始的應用性能提升,企業級特性(如NewStore),以及相關工具的開發(如CeTune性能分析和 調優工具,由女性工程師薛晨迪研發,預計今年更加成熟之后開源)。
段建剛表示,希望有更多的開發者能夠參與到開源社區的開發工作中,包括開源存儲生態系統的建設,而不僅僅是索取——這確實是中國特殊的國情。
來自麒麟云的汪黎博士用團隊的工作證實了中國開發者的進步。據了解,該團隊向Ceph社區提交100+commits,在v0.93版本中,團隊代碼貢獻排名第2。此外,海云捷迅、UnitedStack也做出了各自的貢獻。
用戶眼中的Ceph
從調查問卷結果來看,整體上國內Ceph的部署還處于開發與QA測試階段(46%),在生產環境中部署的達30%,大部分集群的規模在10到50 個節點之間(36%),應用模式RBD仍占主導地位(50%)。當然,參加調查的人群是本來關注Ceph的參會者,實際上整體應用情況應該會低于這個數 據,但這個數據也已經足以說明,Ceph確實在一些國內企業的生產環境中發揮了作用。
完美世界的副總經理張曉宜分享了完美世界一步一步地解決使用Ceph所遇到的問題,他認為,Ceph技術確實不錯,但在知識、易用性、中文資料方 面還需要加強,他還希望薛晨迪介紹的CeTune,可以實現檢測、分析之后的在線調優,也就是不需要重啟Ceph。完美世界的優化過程,張曉宜的PPT談 的非常清楚,在此不再多說。
完美世界副總經理張曉宜
Ceph的面臨的挑戰
調查問卷結果表明,Ceph當前面臨的最主要的三個問題,依次是性能(27%),代碼復雜(26%),以及過多未成熟功能(17%)。
在圓桌討論中,嘉賓們對性能問題吐槽頗多。海云捷迅CTO李華表示,Ceph由于存在已久,沒有針對SSD優化,最大只能發揮40%的SSD性能 (Intel DC S3500)。平安科技(已部署50節點,3個集群)基礎架構管理部存儲與備份組經理王欣也認為性能需要提高,同時他還提到可靠性不足、企業級的特性(容 災、快照、壓縮、去重)缺失、運維人員成本高、3副本帶來的額外開銷等多種不足,他表示,測試結果傳統存儲的成本其實還是低于分布式存儲的。清華大學助理 教授徐葳(部署了60節點)關注的是軟件定義存儲的特性還不能真正用上,還需要一些API;此外Ceph還不是一站式解決方案,調優需要很繁瑣的步驟。
汪黎提到,Ceph的理念很好,SDS和擴展性不錯,自動添加和刪除節點都是優勢,但是存在可靠性和性能的矛盾,當前代碼本身的開銷還是比較重, 代碼路徑太差,多個隊列多個副本拖累寫性能,加入一塊磁盤,集群的寫帶寬并沒有增加多少,延遲也還需要優化;另外,Ceph對自己狀態的監控和管理,如提 前告警之類,還缺乏產品化的工具,還是純手動運維。
Intel 云存儲技術組經理張建認為,用戶發現的這些不同的問題,可以及時反饋給社區,通過社區交流和社區分享,實現開發者和用戶的溝通,并鼓勵用戶的貢獻,來解決這些問題。熱衷于社區貢獻的開發者認為,貢獻對于用戶跟上Ceph的版本升級也非常有好處。
附:北京Ceph Day 用戶調查結果
為了更好的了解Ceph目前在中國的部署現狀,向Ceph社區收集下一步Ceph開發和優化的相關建議,主辦方設計了一份由16個問題組成的調查問卷,包括3個開放性問題。
本次調查問卷共收到有效問卷110份,問卷的匯總結果如下(由Intel云存儲技術組經理張建整理):
1. 您或您公司的定位。39%的與會人員是私有云服務提供商。排在其后的是17%的先關上下游廠商。
2. 正在使用的云操作系統。 OpenStack占主導地位,高達59%。
3. 除Ceph之外采用的其他存儲系統解決方案:商業存儲方案達26%,HDFS占到19%。
4. Ceph部署階段:整體上國內Ceph的部署還處于開發與QA測試階段(46%),在生產環境中部署的達30%。
5. Ceph部署規模:大部分集群的規模在10到50個節點之間(36%),1-10個節點的占到30%。
6. Ceph的應用模式,RBD仍占主導地位(50%),對象存儲占23%,文件系統16%。
7. Ceph版本:31%的人在使用最新的Hammer版本。
8. 數據可靠性機制:三副本仍是主流(49%)。
9. 關注的Ceph技術方向:Cache Tiering是大家最關注的技術(26%),Erasure Coding也占到了19%。全SSD集群和海量小文件也是大家關注的重點。
10. 最關注的性能指標:穩定性是最關注的性能指標(30%),接下來是IOPS,延遲和帶寬。
11. Ceph部署工具:50%的人采用了Ceph-deploy。
12. Ceph集群監控、管理工具:35%的人采用了Calamari,33%的人沒有使用任何監控和管理工具。
13. Ceph前三大問題:依次是性能(27%),代碼復雜(26%),過多未成熟功能(17%)。
14. 對于Ceph開發和優化的建議:主要集中在完善文檔,CephFS優化,全SSD 系統優化等方面。
15. 選擇Ceph的原因:功能全面,社區活躍等。
16. QoS 要求:多種多樣。
(責編/周建丁)