星辰天合(北京)數(shù)據(jù)科技有限公司產(chǎn)品總監(jiān)張旭明

以下為張旭明演講實錄整理:

大家下午好!我是XSKY產(chǎn)品總監(jiān)張旭明。今天我給大家?guī)淼姆窒硎荴SKY SDS激發(fā)通用平臺的數(shù)據(jù)潛能。在加入XSKY之前我從事了10年的存儲研發(fā),希望可以從技術(shù)開發(fā)的角度給大家?guī)硪恍└韶洝?/p>

首先,我們看一下企業(yè)信息化面臨的挑戰(zhàn)。

1

我接觸過很多的客戶,他們面臨的最大挑戰(zhàn)是存儲容量不足,當(dāng)客戶業(yè)務(wù)發(fā)生躍遷式發(fā)展的時候,傳統(tǒng)IT架構(gòu)無法應(yīng)對容量擴容的需求。另外,在傳統(tǒng)IT架構(gòu)下客戶碰到成本高、運維復(fù)雜性高,以及性能擴展有限等問題,TCO持續(xù)上升,部分設(shè)備的擴容成本比新購還高。同時,傳統(tǒng)的IT架構(gòu)也難以應(yīng)對云計算和大數(shù)據(jù)的發(fā)展,包括還有資源孤島問題。以上幾個問題都是客戶的關(guān)注點,我們的機會在于如何滿足客戶需要,解決客戶痛點。

下面我想先與大家分享信息化存儲發(fā)展的技術(shù)和趨勢。前面有很多嘉賓提到過閃存技術(shù),而我有過很長時間的傳統(tǒng)存儲開發(fā)經(jīng)歷,那個時候因為閃存技術(shù)發(fā)展比較緩慢,因此SDS(軟件定義存儲)無法通過X86服務(wù)器把存儲的性能提升上來,而專業(yè)存儲很容易通過硬件堆疊,內(nèi)存加速的方式獲得性能提升,對于運行在通用硬件的存儲軟件來說這是很難做到的?,F(xiàn)在,閃存技術(shù)的發(fā)展把這一瓶頸打破了,通過閃存技術(shù),SDS能輕松達(dá)到專業(yè)存儲的性能水平。

XSKY 認(rèn)為,存儲的主要發(fā)展趨勢包括下面四個方面:水平擴展、硬件通用化、普適多負(fù)載、應(yīng)用感知。我重點分享一下對應(yīng)用感知的理解,未來存儲廠商不應(yīng)該只聚焦在數(shù)據(jù)存儲這一部分,同時我們也需要更好地幫助用戶來規(guī)劃數(shù)據(jù)的使用方式,因為客戶最終需要存儲設(shè)備解決應(yīng)用問題,而不僅僅把數(shù)據(jù)放在這兒,存儲應(yīng)該更加貼近數(shù)據(jù),以便更好的服務(wù)數(shù)據(jù)。

那么,XSKY是如何實現(xiàn)SDS的呢?我們通過將SDS軟件部署在通用平臺上將它轉(zhuǎn)換成分布存儲,提供統(tǒng)一的接口,企業(yè)級存儲功能,以及高性能、高可用性。具體的部署形式可以看一下我們的總體框架圖,我相信大部分的分布式架構(gòu)可以映射到這個架構(gòu)圖中。

2

XSKY是企業(yè)級存儲廠商,我們在性能、可靠性方面做出了非常深度的開發(fā),在數(shù)據(jù)持久化方面我們提出Block持久化。對于專業(yè)存儲而言,落盤系統(tǒng)大都是基于Block來組織管理的,一些開源的存儲采用文件系統(tǒng)的方式進(jìn)行數(shù)據(jù)持久化,由于文件系統(tǒng)本身的一些問題,如使用page cache等,是很難保證性能穩(wěn)定的。鑒于此XSKY研發(fā)了專用的Block持久化層,投入了強大的團(tuán)隊進(jìn)行開發(fā)工作;在存儲服務(wù)層,我們開發(fā)了多級智能cache,通過SSD對系統(tǒng)進(jìn)行加速;同時開發(fā)了很多存儲高級功能,滿足客戶不同級別的需求。為了應(yīng)對不同的業(yè)務(wù)訪問需求,XSKY開發(fā)了包含豐富接口的分布式網(wǎng)關(guān)層,提供包括FC、iSCSI、Local以及rbd的塊訪問服務(wù),同時提供S3以及NFS的非結(jié)構(gòu)化數(shù)據(jù)訪問接口,形成統(tǒng)一存儲。在部署方式方面,我們提供了融合存儲和計算分離部署兩種形式。

實現(xiàn)基本的SDS之后,XSKY是如何激發(fā)通用平臺數(shù)據(jù)潛力的呢?我們需要做到高性能,需要做到高可靠性,同時需要適應(yīng)企業(yè)對可用性的需求。關(guān)于高性能,首先,我們先要找到系統(tǒng)的性能瓶頸在哪里,XSKY從兩個方面進(jìn)行考量,一個是單節(jié)點性能,另外一個橫向擴展性能。單節(jié)點性能瓶頸在磁盤上,雖說現(xiàn)在有全閃方案,真正實際應(yīng)用行業(yè)中不可能為所有用戶提供全閃,所以我們需要把HDD為主存的性能提上去,因此我們提供了智能IO合并算法,提供了熱點數(shù)據(jù)分析技術(shù),智能多路流預(yù)測等算法來實現(xiàn)Cache加速。我們的Block持久化層,提供基于塊設(shè)備的智能磁盤的數(shù)據(jù)管理系統(tǒng),大大提升磁盤IO落盤效率,通過這些方式,提升HDD為主存的IO性能。在橫向擴展方面,XSKY開發(fā)了分布式無狀態(tài)網(wǎng)關(guān),網(wǎng)關(guān)擴展情況下性能基本無損失。通過這兩方面優(yōu)化單點和擴展性能,從而提供集群整體性能呢。高可擴展性方面,通過Pool內(nèi)橫向擴容帶來投資可預(yù)期;同時,Pool間在線擴容可實現(xiàn)業(yè)務(wù)無需等待,性能與容量同步線性增長,資源隨時按需增減,保護(hù)已有投資。

下面討論一下高可用,任何存儲系統(tǒng)首先要解決的高可用問題都包括兩方面內(nèi)容:管理面高可用和IO路徑高可用。所謂IO路徑高可用,就是你出現(xiàn)單點故障時業(yè)務(wù)IO是沒有影響的,XSKY設(shè)計了4路HA,保證在3條路徑異常的情況下仍舊可以訪問存儲。管理面的高可用:同理,出現(xiàn)單點故障時,系統(tǒng)仍舊是可管理、可操作的,XSKY可以自定義備份控制器數(shù)量,保證集群管理節(jié)點處于冗余狀態(tài),避免單點故障。另外,為了保證業(yè)務(wù)持續(xù)高可用,需要重點提及的是企業(yè)級Qos功能,企業(yè)運行分布式存儲系統(tǒng)的時候有很多業(yè)務(wù)跑在上面,首先你會碰到業(yè)務(wù)之間相互沖突的問題,可能有些業(yè)務(wù)IO壓力大卻不重要,但會把一些重要業(yè)務(wù)IO資源搶占了,比如數(shù)據(jù)庫有可能因為非關(guān)鍵業(yè)務(wù)的IO搶占而暫停,很多客戶碰到類似的問題,XSKY提供企業(yè)級卷Qos功能來解決這個問題,保證客戶系統(tǒng)上線之后一兩年系統(tǒng)正常運行。與卷Qos同樣重要的是Recovery Qos,我們知道磁盤會出現(xiàn)一定概率的異常,或者發(fā)生服務(wù)器整體異常,導(dǎo)致硬件模塊掉線,這個時候集群會進(jìn)入Recovery 狀態(tài),Recovery的IO會沖擊業(yè)務(wù)IO,引起業(yè)務(wù)不可用,XSKY提供Recovery策略,可以設(shè)置業(yè)務(wù)優(yōu)先,解決異常單點故障對業(yè)務(wù)的沖擊,提高可用性。

XSKY 設(shè)計SDS還有一個理念就是開放性,我們的產(chǎn)品設(shè)計與硬件充分解耦,同時支持主流的操作系統(tǒng)以及虛擬化平臺:

3

我們可以支持主流的虛擬化平臺Vmware、KVM、HyperV,也支持幾乎所有X86服務(wù)器。

關(guān)于運維,我們思考的是,如何讓維護(hù)變得簡單,高效。XSKY的員工有70%是研發(fā)人員,其中相當(dāng)一部研發(fā)人員來自互聯(lián)網(wǎng)行業(yè),具備非常豐富大規(guī)模集群運維經(jīng)驗。我們的簡單運維思想也體現(xiàn)在產(chǎn)品中。XSKY 的運維不是監(jiān)控一個點、一個面,我們監(jiān)控是一個為期90天的運行過程,通過這個監(jiān)控數(shù)據(jù)可以分析、預(yù)測存儲將會發(fā)生什么變化,例如,按照目前使用速度,還有30天存儲將用完,提前通知用戶擴容;或者說每周五IO壓力大的時候,我們會提醒用戶調(diào)整應(yīng)用。同時,我們的安裝和部署也非常方便。在安裝完系統(tǒng)之后大概兩、三分鐘可以完成一個分布式軟件部署。另外,要想把SDS做到良好的運維管理必須把磁盤維護(hù)好,磁盤是最容易出現(xiàn)故障的。據(jù)業(yè)內(nèi)經(jīng)驗來看,磁盤的年損壞率在3%~6%,當(dāng)磁盤發(fā)生故障時,為了方便磁盤定位,我們做了“硬盤點燈”功能來配合運維。

下面分享一下我們的產(chǎn)品及解決方案。

XSKY有三大產(chǎn)品,X-CBS、X-EBS、X-EOS。首先我介紹一下XSKY對VMware虛擬化場景的支持。我們?nèi)绾螌崿F(xiàn)系統(tǒng)部署的呢?首先在Hypervisor 里啟動一個虛擬機,我們稱之為XVM,把XSKY EBS軟件裝在XVM里面,XVM 將虛擬化后的資源通過iSCSI提供給Hypervisor,Hypervisor 通過VMFS提供給運行在上面的guest VM使用。為了更好的支持Vmware,XSKY開發(fā)了VAAI接口,能更有效的對接VMware。再說一下CBS KVM虛擬化,我們知道XSKY是基于Ceph開發(fā)的,Ceph本身對KVM的支持非常好,但當(dāng)你直接使用CEPH的時候資源管理是發(fā)散的,每打開一次卷會產(chǎn)生大概20個線程,假設(shè)50個虛擬機,每個虛擬機啟動2個卷,這種情況下你大概有兩千個線程搶占你的資源,當(dāng)業(yè)務(wù)的IOPS稍微大一點的時候?qū)ο到y(tǒng)的影響會非常顯著。所以XSKY開發(fā)了librbd proxy,對資源的使用進(jìn)行管理,經(jīng)過這種優(yōu)化,系統(tǒng)的性能可以提升20%,IO延遲降低15%,CPU利用率降低40%,內(nèi)存使用至多減少2/3。

接下來我們再講一講備份歸檔,之前講的非??炱鋵嵪肓粢稽c時間跟大家分享一下EOS這個產(chǎn)品。EOS支持EC的數(shù)據(jù)保護(hù)模式,有更多數(shù)據(jù)利用率,更低的成本,這個對我們EOS的定位是非常重要。我們把它定位在海量文件備份,這里提一下海量,什么叫海量文件,我們認(rèn)為至少億級或者十億級數(shù)量才叫海量文件。在這種文件存儲過程中會發(fā)生什么問題,NFS存儲海量文件它存不了,文件系統(tǒng)在管理數(shù)十億甚至百億文件時非常容易引入問題。XSKY引入了一個小的文件歸并方式增強對海量文件的管理能力。另外,XSKY還提供了NFS和S3的互操作性——這是企業(yè)由文件向?qū)ο筮^渡的最佳選擇,為了解決數(shù)據(jù)的高效利用和處理的問題,XSKY提出了數(shù)據(jù)生命周期管理策略,用戶可以對設(shè)置數(shù)據(jù)生命周期策略,決定數(shù)據(jù)是否歸檔、在高低性能池之前移動,以及何時自動刪除。

最后我想分享一下我們典型的配置:兩塊SAS 300GB做RAID1 用于承載操作系統(tǒng),CPU 用兩顆2630v3,8塊以上4TB SATA HDD,內(nèi)存64GB 或以上,兩塊400GBSSD盤,如果你擁有三套這樣的配置,加上XSKY的分布式存儲軟件就能獲得高性能分布式企業(yè)級存儲,我的分享就到這里,謝謝大家。

分享到

sunk

相關(guān)推薦