如何解決存儲系統(tǒng)性能分析與優(yōu)化中的三大類難點?

存儲系統(tǒng)的性能分析與優(yōu)化工作是一項長期、復(fù)雜而重要的工作,需要明晰存儲性能優(yōu)化目標(biāo),做好詳細性能分析,并制定階段性的優(yōu)化方案和驗證方案,以確保存儲性能優(yōu)化工作的持續(xù)開展。

存儲系統(tǒng)的性能管理是運維的必修課,其核心工作是性能分析與優(yōu)化,從存儲系統(tǒng)架構(gòu)的規(guī)劃設(shè)計開始,到部署實施,再到IT系統(tǒng)的投產(chǎn)運維過程,會貫穿整個IT系統(tǒng)的生命周期。存儲系統(tǒng)可分為SAN存儲、NAS存儲以及分布式存儲等方案,不同的存儲方案對應(yīng)不同的存儲系統(tǒng)架構(gòu)和存儲IO數(shù)據(jù)流,也分別對應(yīng)著不同應(yīng)用場景下的最佳實踐。存儲IO數(shù)據(jù)流與上層服務(wù)器對接,其性能指標(biāo)又主要表現(xiàn)為讀寫IO延時、吞吐量、IO大小等等。

存儲系統(tǒng)的性能分析與優(yōu)化工作是一項長期、復(fù)雜而重要的工作,需要明晰存儲性能優(yōu)化目標(biāo),做好詳細性能分析,并制定階段性的優(yōu)化方案和驗證方案,以確保存儲性能優(yōu)化工作的持續(xù)開展。

近日社區(qū)組織線上交流,重點圍繞存儲系統(tǒng)性能分析與優(yōu)化過程中的若干難點問題,進行分享探討,旨在為同業(yè)在此類項目規(guī)劃、建設(shè)、管理過程中提供一些啟示和幫助。

以下是此次探討中大家研討關(guān)注的典型問題及嘉賓解答。

一、存儲選型問題

1.存儲選型過程中,不同性能指標(biāo)的區(qū)別,選型的重點是什么?

 cpc1989某保險公司存儲工程師:

存儲性能分析主要是IOPS、吞吐量(Throughput)、延時(Latency)這三大指標(biāo)。

而存儲選型過程需要貼合應(yīng)用場景,對性能穩(wěn)定性要求較高、響應(yīng)時間敏感的場景,如一些核心交易類數(shù)據(jù)庫,需要更關(guān)注存儲的延時指標(biāo);對數(shù)據(jù)量增長較快、海量數(shù)據(jù)分析類的場景,如數(shù)據(jù)處理類應(yīng)用,需要關(guān)注存儲的IOPS和吞吐量指標(biāo);對于其他一些性能不敏感、數(shù)據(jù)量不大的場景,存儲的性能往往不是選型的關(guān)鍵因素,只需要滿足性能需求,可更多關(guān)注存儲的性價比等其他因素

2.運行數(shù)據(jù)庫,集中存儲和分布式存儲,I/O方面誰更強?

 spgoall和祐國際醫(yī)院信息管理部部長:

具體需要看是哪種數(shù)據(jù)庫,哪個版本的,以及數(shù)據(jù)庫的設(shè)計都會影響IO性能,和集中存儲和分布式存儲關(guān)系不大。要做具體測試才知道實際的性能

 Dell_zhangcan戴爾科技架構(gòu)師:

理論上傳統(tǒng)數(shù)據(jù)庫在集中存儲上IO更強,但醫(yī)院的主流數(shù)據(jù)庫只有Oracle、SQL和Intersystem公司的Cache三種。這三種數(shù)據(jù)庫在戴爾科技的集中式存儲和分布式存儲上的IO表現(xiàn)都是一樣的。沒有誰更強一說,只有誰更適合醫(yī)院的實際使用環(huán)境。

 czhe醫(yī)療行業(yè):

對于醫(yī)院業(yè)務(wù)系統(tǒng)使用的數(shù)據(jù)庫用集中存儲延時相對來講要小一些,集中存儲中數(shù)據(jù)只要寫入一個磁盤陣列就算成功了,分布式存儲中是寫入大部分的節(jié)點才算成功,如果寫入全部節(jié)點IO性能有影響,寫入少量節(jié)點即是寫入失敗。分布式存儲更適合于大數(shù)據(jù)量、高并發(fā)量,擴展能力更好一些。

 跳出三界外小艾公司架構(gòu)師:

都不強。最強的是用數(shù)據(jù)庫管理的NVMe NAND。

3.虛擬化到底適合用什么樣的存儲?

 cpc1989某保險公司存儲工程師:

一般來說虛擬化還是主要用于一些輕量級應(yīng)用,對IO性能并不敏感,那么選擇的范圍就比較大,只要穩(wěn)定可靠就行;如果用來跑一些對延時要求比較高的數(shù)據(jù)庫應(yīng)用,全閃存的SAN存儲延時低,小IO的情況下,IOPS也能跑的很高;如果是用來跑一些數(shù)據(jù)處理類IO比較大的數(shù)據(jù)庫,分布式存儲性價比是不錯的,最好評估測試一下了,性能瓶頸可能不在存儲端,主機或網(wǎng)絡(luò)層面的壓力也很大。

4.集中式存儲和分布式存儲在讀寫性能上的隨著存儲節(jié)點增多時是否會有較大的差異?

 xiaofu福建醫(yī)科大學(xué)附屬第二醫(yī)院高級工程師:

只能這么說分布式存儲達到一定規(guī)模性能會超過輕松超過傳統(tǒng)存儲,大量節(jié)點,結(jié)合適當(dāng)?shù)臄?shù)據(jù)分布策略,可以達到到非常高的聚合帶寬。傳統(tǒng)的集中性存儲都會有性能瓶頸,一旦達到極限在擴性能不會改變甚至降低。當(dāng)然分布式也不是說可以水平線性提升性能的也是有對應(yīng)瓶頸

 Dell_zhangcan戴爾科技架構(gòu)師:

在理論上和跑分測試上有一定的差異,將來如果都采用傲騰介質(zhì),差異會更小。在醫(yī)院應(yīng)用實踐上幾乎沒有差異,因為應(yīng)用的規(guī)模根本無法跑出差異。

5.傳統(tǒng)的SAN存儲和分布式存儲在IO上的對比?

目前X86架構(gòu)的性能越來越強大。這也促進了分布式存儲的發(fā)展,傳統(tǒng)的觀念中。還是覺得SAN存儲擁有更好的IO性能。分布式有更靈活的架構(gòu)。不過現(xiàn)在隨著硬件的提升。這兩種方式之間的理論性能差距究竟有多大呢。有大神做過詳細的對比嗎?

 fanyqing廈門銀行系統(tǒng)架構(gòu)師:

兩類存儲因架構(gòu)不同,各有各的特點,適用于不同的業(yè)務(wù)場景,不能籠統(tǒng)進行比較。

首先我們來看一下兩類存儲的特點:

1、SAN存儲

性能方面:采用集中式架構(gòu),當(dāng)存儲容量達到一定規(guī)模時,會存在性能瓶頸;擴展性方面:SAN存儲擴展采用擴展柜方式,擴展能力有限;穩(wěn)定性方面:SAN存儲采用專用的軟、硬件,產(chǎn)品投入市場早,成熟度高;此外,從成本方面考慮,通常傳統(tǒng)的SAN存儲比分布式存儲成本高。

2、分布式存儲:

性能方面:因采用分布式架構(gòu),性能會隨著集群的擴展而提高;擴展性方面:采用集群方式,擴展能力強;穩(wěn)定性方面;采用X86+分布式存儲軟件方式,近年投入市場,穩(wěn)定性不如傳統(tǒng)存儲,有待市場進一步考驗。

因此,基于上述特點,在選擇存儲類型時,要根據(jù)業(yè)務(wù)場景。比如傳統(tǒng)關(guān)系型數(shù)據(jù)庫,通常用于存儲傳統(tǒng)業(yè)務(wù)系統(tǒng)的業(yè)務(wù)數(shù)據(jù),對存儲的性能要求較高,但對存儲的容量和擴展性要求相對較小,因此,我們一般采用傳統(tǒng)的SAN存儲(塊存儲);但虛擬化、VDI、容器等,雖然也采用塊存儲,在不是很關(guān)注性能的情況下,基于成本考慮,可以采用分布式存儲的塊存儲;其他像網(wǎng)盤、音視頻、備份數(shù)據(jù)等,對存儲介質(zhì)的讀寫性能要求不高,但要求提供海量的存儲空間,并具備良好的擴展性,可以考慮采用分布式存儲中的對象存儲或文件存儲。

 潘延晟系統(tǒng)工程師:

其實在傳統(tǒng)環(huán)境里面這兩種架構(gòu)的應(yīng)用還是挺清晰的。不過現(xiàn)在隨著X86性能的不斷加強。我感覺好像在一些行業(yè)里出現(xiàn)了兩種選擇均可的情況。在這種情況下就有些不太確定如何去選擇。

在以往的情景中。x86的性能沒有那么高。業(yè)務(wù)的分界也相對明顯。可能數(shù)據(jù)庫我會用SAN。虛擬化搭建的中間件集群我會用分布式。但隨著技術(shù)的不斷成熟。沒有特殊業(yè)務(wù)的需求時好像很難去區(qū)分兩種架構(gòu)的需求。

用過vSAN,也用過超融合。對業(yè)務(wù)要求不夠嚴(yán)苛的環(huán)境里我覺得都能滿足。對于中小企業(yè)來說??赡芫蜁媾R一個兩難的選擇。到底是san還是分布式。以什么作為理論基礎(chǔ)。很多中小企業(yè)也的業(yè)務(wù)場景可能會出現(xiàn)兩者皆可的情況。那么對企業(yè),我覺得應(yīng)該有更多的評判標(biāo)準(zhǔn),技術(shù)儲備,資金,業(yè)務(wù)的窗口期以及特殊性等等多方面考量。目前在我來看。似乎單純從性能上還不足以幫助很多中小企業(yè)做出選擇。

 huijx某銀行系統(tǒng)運維工程師:

IO性能還是需要針對具體的案例來進行說話,不同的測試用例,兩個存儲得出完全相反的結(jié)果也不是不可能的。同樣的測試用例,同樣的存儲,節(jié)點數(shù)/磁盤柜數(shù)量也會影響IO性能。所有談?wù)摾碚撔阅芤饬x不大。

 anonymous:

現(xiàn)在分布式存儲的IO能做到非常高,隨便堆一堆就很輕松的幾百萬的IOPS,對于傳統(tǒng)的SAN存儲來說,需要高配甚至頂配的高端存儲來對標(biāo),但是存儲不僅僅是IOPS這一項指標(biāo)。主要還是要看應(yīng)用,如果是核心的業(yè)務(wù),還是要上傳統(tǒng)的SAN,主要還是要體現(xiàn)在穩(wěn)定,安全,包括運維和容災(zāi)的體系架構(gòu),都已經(jīng)形成了很好的優(yōu)勢,這是目前分布式存儲不可替代的,即便成本很高,大家還是選擇傳統(tǒng)穩(wěn)定的SAN。一些新興業(yè)務(wù),邊緣業(yè)務(wù),可以選擇分布式存儲,低廉的價格,很好的擴展性,包括IOPS,目前還沒有聽說誰家在核心業(yè)務(wù)上分布式存儲的。

 王巧雷sino-bridge系統(tǒng)工程師:

個人覺得這個還是得看使用場景吧,否則沒有一個標(biāo)準(zhǔn),沒有太大的可比性。

傳統(tǒng)的SAN存儲在結(jié)構(gòu)化數(shù)據(jù)這塊市場占有率一直還是挺高的,比如作為數(shù)據(jù)庫存儲。分布式存儲也有自己擅長的方面,比如大規(guī)模的并行數(shù)據(jù)處理等,這都是近些年來逐漸發(fā)展起來的,傳統(tǒng)的SAN存儲可能也能做,但成本就不合適了。兩者都有各自擅長的領(lǐng)域,還是看具體需求吧

 孫偉光中國金融電子化公司IT顧問:

這種實際對比的意義不大,各自應(yīng)用場景都不一樣。分布式存儲沒出現(xiàn)之前,還不是傳統(tǒng)存儲承受了一切。分布式存儲的出現(xiàn)未必是傳統(tǒng)的存儲沒落亦或是產(chǎn)品跟不上時代腳步。它更是這個傳統(tǒng)SAN存儲的有益補充,并非對立。互聯(lián)網(wǎng)架構(gòu),開放式架構(gòu)成就了分布式存儲,但是分布式存儲也不是萬能的,他也解決不了當(dāng)下所有的應(yīng)用場景,兩者互相補充。存儲的出現(xiàn)一方面解決了性能問題,他的高可用性不應(yīng)該被忽視,數(shù)據(jù)是企業(yè)的核心生命力,性能再好的存儲丟一次數(shù)據(jù),再好的存儲性能,也終會被企業(yè)拋棄。

 趙海技術(shù)經(jīng)理:

首先,我覺得傳統(tǒng)SAN存儲之所以還是很多企業(yè)的主流存儲是因為它的穩(wěn)定性和安全性,性能并不是傳統(tǒng)SAN存儲最大的優(yōu)勢。

另外,本身對存儲性能的衡量是有很多指標(biāo)的,這需要POC說話。但是我們可以從原理上來解讀一下他們讀寫的差異。對于傳統(tǒng)SAN存儲來講,它的讀寫以Blcok為單位,通過盤頭的元數(shù)據(jù)來記錄Block的映射及變化。而分布式存儲會有幾種架構(gòu):

1.以對象存儲為底層存儲載體,以分布式協(xié)同算法來組織節(jié)點關(guān)系,以上層接口轉(zhuǎn)換的方式來對接應(yīng)用讀寫,可以提供Block、File、S3等各種存儲接口。

2.以GFS為基本原型,底層為文件系統(tǒng)模式的存儲結(jié)構(gòu),同樣上層進行各種包裝之后形成的可以提供各類存儲服務(wù)的統(tǒng)一分布式存儲。

從存儲架構(gòu)和組織原理上來講,其實他們是有著各自擅長的存儲場景的。比如對于結(jié)構(gòu)化的表數(shù)據(jù)的讀寫來講,其實直接的Block存儲更適合應(yīng)用的讀寫控制;對于以健值方式組織的數(shù)據(jù)結(jié)構(gòu),似乎更適合對象存儲形成的分布式存儲架構(gòu),而以文件為主的數(shù)據(jù)場景,如果不能以對象方式重構(gòu),那么文件系統(tǒng)架構(gòu)的分布式存儲似乎更適合。

總而言之,不同的存儲有不同的優(yōu)勢和劣勢,只要我們的應(yīng)用場景選對了,那就是最優(yōu)的選型。

 cpc1989某保險公司存儲工程師:

個人的一點看法:性能離不開應(yīng)用場景,比如OLTP類應(yīng)用,最重要的性能指標(biāo)就是延時,其次才是IOPS,存儲延時低,IO響應(yīng)時間就短,數(shù)據(jù)庫的并發(fā)就可以比較高,否則可能出現(xiàn)數(shù)據(jù)庫鎖等待,并發(fā)性能就出現(xiàn)了問題,除非再去應(yīng)用邏輯上去優(yōu)化;而一些大量的數(shù)據(jù)處理類應(yīng)用,最重要的性能指標(biāo)是吞吐量,吞吐量高,數(shù)據(jù)處理任務(wù)就能更短時間完成。

SAN存儲的優(yōu)勢就是IO短平快,存儲延時低,但其架構(gòu)設(shè)計中吞吐量會有瓶頸存在的,但小IO的情況下,最高端的存儲也是能超過千萬IOPS,IO延時甚至小于0.1ms;分布式存儲的優(yōu)勢是擴展性強,大容量高吞吐高IOPS,但是IO路徑長,存儲架構(gòu)設(shè)計就決定了IO延時會是軟肋,即使通過各種數(shù)據(jù)緩存機制來優(yōu)化讀寫的延時,但性能穩(wěn)定性還是存在隱患,會有性能抖動。

 跳出三界外小艾公司架構(gòu)師:

這個問題的提問出發(fā)點就有問題。

存儲的性能(IOPS)根源在盤。什么盤?機械硬盤還是SATA SSD或者NVME SSD?多少個盤?這才是存儲的IOPS的主要矛盾。FC-SAN或者分布式存儲連前三的因素都排不上。

給你舉個例,EMC VNX 5100配6個SSD,配120個10k rpm HDD。VNX 5700配120個10k rpm HDD。誰的性能高?我對DELL EMC現(xiàn)在的產(chǎn)品不熟悉了。你還可以選配個現(xiàn)在DELL EMC和VNX 5700同檔次的產(chǎn)品,也配120個10k rpm HDD。誰的IOPS高?你要把這個問題搞明白了,這個問題你就搞明白一半了。然后再談FC-SAN和分布式的性能區(qū)別。

用VNX 5100和5700舉例。是因為當(dāng)年這兩款都是IDC BAND 4和BAND 7的銷量冠軍。

 張文正dcits系統(tǒng)工程師:

這個還是根據(jù)應(yīng)用場景區(qū)分比較合適

SAN存儲一般集中存儲,集中架構(gòu),技術(shù)成熟度高,硬件成本比較高,擴展能力有限,但目前閃存產(chǎn)品比較多,IOPS也很高,集中管理維護方便;

分布式存儲一般采用x86架構(gòu),擴展能力強,最重要是地域訪問優(yōu)化特性,也是采用統(tǒng)一的命名空間管理,后面多臺存儲服務(wù)器組成,采用高速緩存連接,擴展及其方便,而且提供相應(yīng)的HTTP/RESTful/API接口,適用于海量存儲和對象存儲。

6.SAN、NAS、分布式存儲等不同存儲方案的性能分析對比,最佳實踐有哪些?

 cpc1989某保險公司存儲工程師:

SAN存儲方案是基于存儲塊的集中式架構(gòu),適合用于高并發(fā)、低延時的小IO的OLTP場景,性能穩(wěn)定性高,但擴展性差,大數(shù)據(jù)量的數(shù)據(jù)處理效率不高;

NAS存儲方案,適配性強,管理簡單,通過以太網(wǎng)訪問模式走NFS/CIFS協(xié)議,提供了廣泛兼容性易用性的共享能力,但采用樹狀目錄結(jié)構(gòu)的文件系統(tǒng),在海量文件的情況下,訪問效率較低,適宜于性能需求不高的場景;

分布式存儲方案的架構(gòu)復(fù)雜性較高,IO路徑長,性能穩(wěn)定性稍差,但擴展性好,適宜于大IO的海量數(shù)據(jù)分析場景或?qū)ρ訒r敏感度不是特別高的場景。

二、性能指標(biāo)及性能監(jiān)控問題

1.怎么快速的測出裸金屬的各項性能指標(biāo)?

服務(wù)器萬兆網(wǎng)卡綁定了bond,但是實際使用過程中使用時發(fā)現(xiàn)網(wǎng)絡(luò)速率未達到萬兆網(wǎng)卡性能問題;另外在對服務(wù)器進行虛擬化時,系統(tǒng)管理員反饋存在磁盤IO存在問題,所以現(xiàn)需要對新上架的服務(wù)器的網(wǎng)絡(luò)、磁盤、CPU進行測試,看有沒有比較快速的辦法處理?

 cpc1989某保險公司存儲工程師:

對服務(wù)器網(wǎng)絡(luò),磁盤,CPU的性能POC測試,一般都是要依賴于設(shè)備上架部署,安裝系統(tǒng)以及操作系統(tǒng)層面的測試工具,并沒什么捷徑,但也可以得出一個性能基線,然后虛擬化后同樣的性能測試方法,又是另外一個性能基線。

另外網(wǎng)卡或磁盤IO的性能問題存在很多性能干擾因素,包括系統(tǒng)參數(shù)的配置、IO路徑中的資源熱點或爭用,當(dāng)然也可能存在硬件問題,還可能存在規(guī)劃設(shè)計與用戶的性能需求并不匹配的情況,還是要有更多的性能數(shù)據(jù)來支持性能分析與優(yōu)化

2.對象存儲性能監(jiān)控指標(biāo)有哪些?

隨著對象存儲越來越普及,面臨的運維壓力隨之而來,在塊存儲和文件存儲時代可以基于三大黃金指標(biāo)(iops、帶寬、時延),但是對象存儲沒有這類直接的指標(biāo),想問對象存儲如何做到通過性能數(shù)據(jù),直觀看到存儲狀態(tài)?

 cpc1989某保險公司存儲工程師:

個人的一些看法,存儲性能數(shù)據(jù)本質(zhì)上就是存儲服務(wù)能力的一種量化,對象存儲包括元數(shù)據(jù)和普通數(shù)據(jù)對象,對外提供數(shù)據(jù)對象的存儲服務(wù)。那么數(shù)據(jù)對象的get、put等操作可以類比塊存儲的讀或者寫IO,IOPS,帶寬,時延也就可以類比,這些性能數(shù)據(jù)在一定程度上就能描述對象存儲系統(tǒng)的服務(wù)水平。

當(dāng)然,從性能監(jiān)控角度來看的話,這三大指標(biāo)在特定場景下,有些性能指標(biāo)參考的意義并不是最重要的,這需要俯瞰全局,做整體架構(gòu)和全鏈路分析,發(fā)掘更多存儲系統(tǒng)相關(guān)組件的性能數(shù)據(jù),結(jié)合日常運維經(jīng)驗和故障場景去數(shù)據(jù)分析。

3.存儲系統(tǒng)性能監(jiān)控中的性能指標(biāo)如何設(shè)置?

 榮重實XSKY技術(shù)總監(jiān):

性能指標(biāo)最好設(shè)計成綜合維度,覆蓋從客戶端到應(yīng)用端、網(wǎng)絡(luò)端和存儲端,中間可能涵蓋服務(wù)器、網(wǎng)絡(luò)及存儲等硬件和各級軟件;

定義一套存儲的性能指標(biāo),可以根據(jù)產(chǎn)品對應(yīng)官方提供的性能參數(shù),推算出一份理論值,再通過實際設(shè)備壓力測試得到一份測試值,配合實際使用場景一般所處于的壓力,估算出一份合理使用值;

對于一套存儲本身,可以監(jiān)控其CPU、內(nèi)存、硬盤和網(wǎng)絡(luò)的使用情況,確認其使用的負載壓力。

4.如何主動發(fā)現(xiàn)存儲問題?

存儲一旦出問題對業(yè)務(wù)系統(tǒng)將是致命的災(zāi)難,如何主動發(fā)現(xiàn)問題。

 wuyandekuse icss系統(tǒng)工程師:

最好有冗余

有條件用自動運維軟件檢測

加強日常巡檢,日志保存。

 JanXC nec系統(tǒng)架構(gòu)師:

還是應(yīng)該加強監(jiān)控的。結(jié)合存儲的廠商和自研的腳本,添加監(jiān)控,進行主動監(jiān)控。

 cpc1989某保險公司存儲工程師:

硬件方面,硬件監(jiān)控、日常巡檢不可或缺,由于存儲冗余機制,硬件故障不一定會影響業(yè)務(wù)運行,但及時故障處理是必須的;

性能方面,系統(tǒng)上線前,有條件時要模擬應(yīng)用場景可開展性能測試,性能基線數(shù)據(jù)是后期實際運行過程中存儲性能瓶頸的參考,也是擴容和架構(gòu)調(diào)整時的參考,另外性能監(jiān)控也要補上;

容量方面,定期評估存儲容量,分析容量使用趨勢,提前準(zhǔn)備。

數(shù)據(jù)保護方面,定期數(shù)據(jù)備份最為重要,對突發(fā)情況有應(yīng)急手段。

 keller01系統(tǒng)工程師:

做好日常維護,每天登存儲對設(shè)備運行狀態(tài)進行分析。到官網(wǎng)查找新版本的微碼,盡可能保證微碼版本較新。

三、存儲性能瓶頸分析與優(yōu)化

1.分布式存儲對Linux系統(tǒng)swap分區(qū)的影響?

 cpc1989某保險公司存儲工程師:

存儲性能層面,swap是虛擬內(nèi)存,對于存儲系統(tǒng)來說,內(nèi)存也是數(shù)據(jù)緩存的一種,分為存儲節(jié)點的內(nèi)存緩存和客戶端本地緩存,通過數(shù)據(jù)緩存來提供存儲IO性能。禁用swap可能是為了避免swap引起的性能抖動。

服務(wù)器層面,swap的設(shè)計是通過犧牲性能來換取系統(tǒng)或進程安全,而啟用swap再配合監(jiān)控來保障業(yè)務(wù)連續(xù)性。

 jakeyyu三甲醫(yī)院系統(tǒng)架構(gòu)師:

swap是虛擬內(nèi)存,應(yīng)對物理內(nèi)存不夠用,對于虛擬化平臺的物理內(nèi)存資源集中使用調(diào)度的角度看,物理內(nèi)存的使用對于某一進程而言很少會出現(xiàn)不足的情況,反而此時使用swap會使得存儲抖動現(xiàn)象引起整個系統(tǒng)性能的下降。

 zzouqb光大銀行信息科技部系統(tǒng)運維工程師:

用到swap才會有一些影響,內(nèi)存充足的情況下一般是不會用swap的,有些numa node memory使用不均衡,可能在內(nèi)存夠用的情況下也會用到swap。

正常情況下真到了內(nèi)存不夠了,會把匿名內(nèi)存交換到swap中轉(zhuǎn)一下,空出點內(nèi)存,沒有swap就只能kill進程了。這個就是沒有swap的情況下可能的影響了。

所以做不做swap你看著辦。

回到這個問題有沒有影響做個壓測不就完事了。

 沈天真浪潮商用機器售前支持:

是的;swap會影響IO性能,swap啟動后,其實也就是把磁盤空間當(dāng)內(nèi)存用,很明顯占用了磁盤I/O的時間和資源,相當(dāng)于磁盤一心二用了。

2.超融合上分布式存儲的機制問題?

關(guān)注到現(xiàn)在HCI市場很火,也出現(xiàn)諸多分布式存儲產(chǎn)品,了解各家HCI內(nèi)的分布式存儲方案后,有一個分布式存儲機制問題:

超融合上的分布式存儲玩法大概有兩種,一種是完全的分布式,比如FusionStorage,數(shù)據(jù)完全切片打散,多節(jié)點讀多節(jié)點寫;另一種類似Nutanix,有IO本地化這種機制,讀優(yōu)先從本節(jié)點讀,寫由多節(jié)點寫。這樣就想到兩個問題:

1,F(xiàn)usionStorage這類完全分布式的做法,利用多節(jié)點性能,那是不是有很大部分資源消耗去保障分布式數(shù)據(jù)的強一致性?

2,對于Nutanix分布式存儲,在讀場景下還是受制于單節(jié)點的性能嗎?感覺沒體現(xiàn)分布式的優(yōu)勢。

 cpc1989某保險公司存儲工程師:

數(shù)據(jù)完全打散讀寫的方式IO要經(jīng)過網(wǎng)絡(luò)傳輸時延,IO時延增加,更適合于大IO、高帶寬的應(yīng)用場景,如果用于IO延時要求高的場景,需要優(yōu)化網(wǎng)絡(luò)傳輸、磁盤讀寫等時延。

讀優(yōu)先從本節(jié)點讀這種機制是通過單節(jié)點本地內(nèi)存,本地SSD做讀緩存,讀IO的時延大大降低,適合小IO、低帶寬、讀比例較高的應(yīng)用場景。

3.各類型存儲系統(tǒng)的性能分析和優(yōu)化關(guān)注哪些方面?

大概歸納為以下兩個問題:

1,各類存儲系統(tǒng)(SAN/NAS/OBS)在整體性能表現(xiàn)上,應(yīng)側(cè)重關(guān)注哪些指標(biāo)?各指標(biāo)高低含義代表什么呢?

2,在SAN/NAS/OBS三類存儲上,如何進行規(guī)劃存儲的使用規(guī)范,有什么建議,比如一些典型問題:塊存儲LUN大小和塊大小?NAS海量文件應(yīng)對方式?OBS對結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)存取優(yōu)化建議?

 cpc1989某保險公司存儲工程師:

1.個人看法是,存儲性能就是存儲對外的服務(wù)能力,SAN存儲對應(yīng)于存儲塊的讀寫,NAS對應(yīng)于文件的創(chuàng)建、讀寫等操作,OBS對應(yīng)于對象的get、put等操作,如何評價存儲性能高低,關(guān)鍵是看你的使用場景的性能關(guān)注點,可能是要求高并發(fā)高帶寬,或者高并發(fā)低延時。

2.塊存儲LUN大小設(shè)置還是看上層主機或應(yīng)用的需求,一般lun小一些,對應(yīng)的lun數(shù)量會多一些,IO并發(fā)更高,塊大小是存儲的一種屬性,一般不需要設(shè)置;NAS在應(yīng)對海量文件時,樹形存儲結(jié)構(gòu)相對比較乏力,讀寫效率較低,提高客戶端本地緩存,對讀寫性能更好一些。

4.存儲擴容或存儲架構(gòu)改造過程中,如何測試及評估是否會出現(xiàn)存儲性能瓶頸?

 cpc1989某保險公司存儲工程師:

首先需要定性分析,分析觸發(fā)存儲性能瓶頸的因素以及可能出現(xiàn)的性能瓶頸點;其次是定量分析,需要建立存儲性能基線數(shù)據(jù),做好性能容量管理,關(guān)注性能容量指標(biāo)(評估擴容后,存儲的IOPS/GB是否有較大變化),分析存儲性能負載是否均衡分布,提前做好規(guī)劃,避免存儲性能瓶頸。

5.運維過程中出現(xiàn)的存儲性能瓶頸問題,如何分析、定位、確認?

 nikkordong博雅云計算科技(北京)有限公司產(chǎn)品總監(jiān):

三步走,采數(shù)建模和分析。

1)采數(shù):容易理解,通過存儲設(shè)備的管理接口,持續(xù)的,周期性(分析性能瓶頸的話周期最少5分鐘)的采集各類指標(biāo)數(shù)據(jù)。注意的是對于一些關(guān)鍵指標(biāo),例如存儲上的IOPS、延遲,光交上的吞吐、丟包、光功率等都要采集到。

2)建模:看您那是什么類型的存儲了,SAN、集中式NAS還是分布式,不同類型分析模型不一樣。以最復(fù)雜的SAN為例,要建立從服務(wù)器到存儲的端到端分析模型。一般情況下,不同架構(gòu)下存儲性能瓶頸大概率會出現(xiàn)在特定位置,例如存儲池、前端口、級聯(lián)端口、復(fù)制鏈路等,單獨看一個位置是不夠的,要結(jié)合看。

3)分析:有了數(shù)據(jù)和模型,分析就容易了,算法啥的都不是最重要的,有經(jīng)驗的運維人員基本都能看出問題了。需要說明的是分析一定要結(jié)合業(yè)務(wù)場景看。

還有一點就是需要好的工具平臺,能夠自動完成上述工作。

6.存儲系統(tǒng)的性能優(yōu)化手段有哪些?在不同場景下,如何抉擇性能優(yōu)化手段?

 cpc1989某保險公司存儲工程師:

存儲性能優(yōu)化手段可大致總結(jié)為硬件升級、調(diào)整性能負載、調(diào)整應(yīng)用復(fù)雜以及數(shù)據(jù)緩存優(yōu)化。

存儲性能優(yōu)化工作具有一定的策略性,科學(xué)的優(yōu)化策略才能指導(dǎo)制定更加合理的存儲性能優(yōu)化方案。

1)通盤考慮:存儲性能問題是一個全局性問題,需要通盤考慮IO路徑上的性能瓶頸,分析性能優(yōu)化方案中可能出現(xiàn)的連鎖反應(yīng),以提高性能優(yōu)化決策的正確性。

2)優(yōu)化的性價比:制定合理的性能優(yōu)化目標(biāo),在多種性能優(yōu)化方案的選擇上,要綜合考慮方案成本、實施復(fù)雜性、收益等。

3)規(guī)劃更重要:相比于存儲性能優(yōu)化帶來的優(yōu)化改造成本,提前做好合理的規(guī)劃更為重要。

4)完善性能監(jiān)控:端到端的存儲性能也是非常重要的,對整個數(shù)據(jù)IO路徑進行監(jiān)控,基于存儲性能基線來分析實際運行中的性能數(shù)據(jù),從而及時發(fā)現(xiàn)存儲性能瓶頸,也能驗證存儲優(yōu)化的成果。

四、交流總結(jié)

通過本期線上交流活動,在存儲系統(tǒng)性能分析與優(yōu)化方面,達成了如下的交流共識,僅供參考:

1)不同架構(gòu)的存儲方案有著不一樣的性能特性,各有其擅長的存儲場景,SAN存儲的延時低,性能表現(xiàn)穩(wěn)定,但擴展性弱;分布式存儲擴展性強,性能表現(xiàn)強勁,高IOPS高帶寬;NAS存儲適配性強,性能較弱。

2)存儲選型除了考慮存儲的性能特性,更需要貼合應(yīng)用場景需求。核心交易OLTP類應(yīng)用,一般是小IO需要存儲具有更高穩(wěn)定性,響應(yīng)時間短;數(shù)據(jù)處理類應(yīng)用,一般是大IO,需要存儲具有高吞吐,容量易擴展;虛擬化環(huán)境,一般對應(yīng)性能要求并不高,需要存儲具有更高的性價比。

3)存儲性能分析與優(yōu)化的前提是性能測試與監(jiān)控,性能測試得出性能基線數(shù)據(jù),性能監(jiān)控關(guān)注實時性能表現(xiàn),從而做好性能管理工作,一般可通過IOPS、延時和帶寬這三大性能指標(biāo)來總結(jié)存儲系統(tǒng)的性能。

4)存儲系統(tǒng)性能優(yōu)化最重要的是做好提前規(guī)劃,優(yōu)化方案要從全局出發(fā),綜合考慮性能優(yōu)化手段的性價比。

THEEND

最新評論(評論僅代表用戶觀點)

更多
暫無評論