服務熱線
0755-83647532
發表日期:2016-07-29 文章編輯:管理員 閱讀次數:
本文將以中國某個領先的網絡游戲開發商和運營商為例,每月平均活躍登錄約1,000 萬人次。傳統的商業存儲解決方案在維護成本和時間方面都不盡如人意。為了提供價格經濟的高性能存儲解決方案,以滿足虛擬游戲主機以及測試、開發和備份等各種內部需求,該企業部署了基于Ceph 和英特爾® 平臺的橫向擴展存儲解決方案。借助新一代英特爾® 至強™ 處理器E5-2600 產品家族和英特爾® 固態盤DC P3700/P3600 系列,基于Ceph 的軟件定義存儲解決方案可為從KVM 虛擬化、游戲網站托管、數據庫恢復到日志分析等多種服務提供高性能、高擴展性和高可靠性的存儲平臺。
根據IDC的預測,“從2013 年到2020 年,全球數據總量將增加10 倍,從4.4ZB 增加到44ZB” 。增加的大多數新數據來自非結構化數據。傳統的企業存儲側重于結構化數據,通常通過添加更多的服務器和存儲來應對數據爆炸式增長。這些傳統的企業存儲解決方案通常為基于傳統NAS 的專有硬件,與橫向擴展存儲解決方案所使用的商用硬件相比,不僅價格昂貴,而且也難以實現硬件再利用。除了一次性支出資本,為了滿足潛在的未來業務增長需求,傳統的NAS 系統在最初會對系統進行預留配置,這需要大量的前期投資,進而造成系統存儲空間在未達到容量目標是浪費的。相反,軟件定義橫向擴展存儲解決方案可通過添加新節點實現輕松擴展。橫向擴展存儲正在作為傳統企業存儲的替代方案而出現在很多應用場景中。
• 資本支出:傳統企業存儲使用價格昂貴的專有硬件。這些硬件資源到期停止使用后,難以實現再利用。
• 運營支出:傳統企業存儲系統中的每個裝置需要單獨進行管理,一旦存儲容量增加,運營成本將急劇增加。從維護角度來看,如果出現任何軟硬件故障,通常需要執行規定的作業流程予以處理,運營支出較大。
• 可擴展性:各個部門往往傾向于保留自己的存儲系統,這會造成總存儲容量出現過度配置,而無法實現“按增長付費” 的理想模式。此外,傳統存儲系統擴展難度較大,難以滿足業務需求。
Ceph 是一個可大規模擴展的開源軟件定義橫向擴展存儲系統, 它可在單一平臺上提供對象、塊和文件系統存儲。它在標準的大容量服務器上運行,這有助于節省成本,同時提供出色的靈活性,支持按需擴展容量。Ceph 日益受到公共云和私有云服務提供商的歡迎,在基于Openstack 的云服務中是最流行的塊存儲驅動程序。下圖顯示的是Ceph 架構。
為了應對資本和運營支出挑戰,該企業自2013年開始調研Ceph,并在年底建立了研究和測試集群。基于新一代英特爾 至強處理器E5-2600 產品家族和英特爾®固態盤DC P3600 系列,他們構建了約200 個OSD 節點和400 TB 容量的Ceph 集群,為其研發部門以及包括KVM 虛擬化與游戲托管在內的生產環境提供高性能、高擴展性和高可靠性的存儲平臺。
高可用性和可靠性
作為國內領先的網絡游戲開發商和運營商,致力于為游戲玩家提供基于其專有游戲引擎和游戲開發平臺的各種網絡游戲,這不僅必須做到更新頻率快,同時要求推出速度及時。這就需要使用具備較高可用性和可靠性的存儲基礎設施,以便存儲這些虛擬游戲主機和數據庫并歸檔關鍵日志。
Ceph 通過在整個集群存儲多份副本來確保數據的可用性,并且在出現數據損壞、硬盤故障或節點故障時,可自動恢復或遷移數據。例如,如果存儲了主副本的硬盤出現故障,Ceph 將自動檢測出故障并標記即將出現故障的OSD,然后根據一致性哈希算法計算出新的主要OSD,并暫時利用原有的輔助OSD 作為主要OSD 來回填這一新的OSD。恢復過程對系統性能的影響可通過各種可配置參數進行調節。
為了更好地服務于其數百萬用戶,網絡游戲通常分為不同的區域,并通過不同的游戲服務器提供卓越的服務。在傳統企業存儲中,這些游戲服務器上的數據庫需要備份到其他服務器上。一旦游戲服務器發生故障,無論是軟件問題還是硬件問題, 都需要遷移游戲、重新加載備份服務器上的備份數據庫,并進行手動恢復。總體遷移時間通常為5 到10 個小時。現在,采用Ceph 來存儲這些虛擬服務器,恢復備份數據時間可縮短到5 至10 分鐘。
Ceph 性能測試
性能測試的目的是測試Ceph 可否應用在一種重要的場景中:數據庫備份和恢復。
• 測試系統
測試系統由41 臺存儲服務器組成,每臺都配備了雙路英特爾 至強處理器E5-2600 產品家族、96GB 內存和12 塊4T 硬盤。高性能集群配置了雙路英特爾至強處理器E5-2600 產品家族和96GB 內存,并分別配備一塊1.2TB 英特爾固態盤DC P3600 系列,用于KVM 虛擬服務器托管。
• 數據庫備份和恢復性能調優
在該企業生產環境中部署的首個Ceph 集群主要用于數據庫備份,游戲的美術素材和源代碼存儲上。它需要較高的備份和恢復性能,以縮短潛在的服務影響時間。首先,集群采用一塊RAID6 磁盤進行構建,用作單一的高可用性Ceph OSD 實例。這種配置展示了較好的備份速度(高達240MB/秒),但在執行恢復時,單線程讀取應用程序的速度被限制在30MB/秒。這證明了不應在Ceph 集群中使用RAID。然后,我們重新部署了Ceph 集群,并將每塊硬盤作為一個OSD 實例。備份速度提升到400MB/秒,而恢復速度仍然很慢(40MB/秒)。進一步分析表明,作為分布式存儲系統,所有順序I/O 將在OSD 端呈現隨機狀態,所以我們需要提升OSD 端的I/O 請求大小,以提升恢復性能。所以我們增加了OSD 硬盤和KVM 虛擬磁盤的read_ahead_kb 大小,這樣,恢復速度提升到600MB/秒,性能提升20 倍。備份和恢復性能測試證明,經過具體優化,Ceph 可以在一些關鍵業務領域使用。
借助英特爾PCIe* 固態盤提升Ceph 的性能
• 借助英特爾PCIe* 固態盤啟動虛擬服務器,將性能提升3 倍
該企業存儲集群的一個重要應用場景是托管KVM 虛擬機,同時作為Web 服務器和游戲服務器。不幸的是,如果不使用固態盤作為日志,在運行40 多臺虛擬機的時候,測試發現刪除這些虛擬機中的大文件時,集群性能將顯著下降,響應時間大于5 秒。作為優化,我們部署了一塊1.2TB 的英特爾固態盤DC P3600 系列,并在其上創建三個獨立的目錄,用于存放三個OSD 實例。憑借英特爾固態盤DC P3600 系列,現在即使刪除大文件,也可以支持120 臺虛擬服務器,延遲只有幾毫秒。使用這種配置,Ceph 集群性能和一個固態盤一個OSD 實例部署場景下由CRUSH 算法引起的空間不平衡問題都能夠得到解決。
• 在Ceph 中采用PCIe* 固態盤:日志和緩存
Ceph OSD 使用日志實現高速度和一致性。這些數據將首先通過直接IO 寫入日志,然后同樣的數據將寫入后端存儲— 文件存儲(FileStore),最后OSD 再確認完成寫入操作。這將確保向客戶端發送確認信息時,所有數據都將寫入到永久性存儲。這種特性導致了一種常見的Ceph 集群部署模式:將日志存入快速驅動器— 固態盤,將文件存儲放入慢速驅動器— 傳統硬盤。Ceph 日志針對所有日志寫入執行同步寫入操作(O_ DSYNC),因此除了固態盤的IOPS,其持久性是另一個重要的考慮因素。基于PCIe* 的英特爾® 固態盤作為Ceph 日志磁盤展示了良好的性能和持久性。我們在5 節點Ceph 集群上測試了4K 隨機寫入性能,每個節點配置了14 塊4TB 硬盤。在沒有將固態盤用于日志的情況下,我們在每塊硬盤上創建分區作為日志,4K 隨機寫入吞吐量為1818 IOPS。然后,我們安裝了一塊英特爾固態盤DC P3600 系列作為這14 塊硬盤的日志,吞吐量提升到6063 IOPS,性能提升高達233%。在固態盤上使用緩存加速軟件來提升存儲性能是一種頗為流行的做法。英特爾固態盤DC P3700 系列可提供高達75,000 4K 隨機寫入IOPS,同時,英特爾固態盤DC P3700 系列在其生命周期內支持每天高達17 次的寫入耐用性,這幾乎是英特爾固態盤DC P3600 系列的6 倍,因此我們選擇了英特爾固態盤DC P3700 系列作為緩存和日志。我們采用fio,并用1.2 theta 的zipf 分布來模擬特定緩存命中率的工作負載,并在4 節點Ceph 集群上測試的flashcache 性能。每個節點配置了雙路英特爾至強處理器E5-2600 產品家族、32GB 內存、10 塊1TB 硬盤以及一塊作為flashcache 的2TB 英特爾固態盤DC P3700 系列。在不使用flashcache 的情況下,4K 隨機讀寫獲取的吞吐量為5875/6840 IOPS。采用英特爾固態盤DC P3700 系列作為flashcache,吞吐量將分別提升到17775 和21020 IOPS,性能均提高3.02 倍。
經驗表明,基于Ceph 的開源存儲系統能夠憑借英特爾產品提升性能并降低成本,同時也證明了Ceph 是一款面向云服務的可行的存儲后端,案例研究證明采用基于PCIe* 的英特爾® 固態盤作為日志和緩存可以顯著地提升Ceph 集群的整體性能。
文章摘自英特爾固態盤
歡迎聯系寶通集團咨詢英特爾固態盤產品信息
寶通集團聯系方式
咨詢熱線:400-830-0107
寶通官網:www.btibt.com
客戶垂詢郵箱:Customer@ex-channel.com
客戶垂詢QQ:1305742380
地址:深圳市福田區深南大道1006號國際創新中心C座11樓
郵編:518026