IPSAN 效能會不如local disk array?

先說一下,也許很多人不知道什麼叫IPSAN,其實它就是我們一般稱的 iSCSI。很多人都說IPSAN的效能會不如本機的磁碟陣列卡或是本機外接的儲存設備。一般來說,我會說這個答案是對的。但是說IPSAN的效能一定不如本機的磁碟陣列,這我也絕對不同意,因為我真的可以用 SDS(如 TrzeNAS 或 NexentaStor)實做出來效能比起本機的磁碟陣列卡或是外接磁碟櫃效能好很多的一個IPSAN的儲存設備。

為什麼大部分的IPSAN的效能會不如本機磁碟陣列卡或是外接磁碟陣列?絕對不是因為很多IPSAN都只有Gb的網路介面,其實現在有很多的IPSAN都提供10Gb的網路介面,但是實際上介面速度跟儲存設備能夠提供的速度是兩回事,這是很多人的盲點。很多人都以為說,只要儲存設備提供了10Gb的網路介面,就可以真的跑到10Gb的傳輸速度, 這是一個天大的錯誤。是否真的能夠跑得到10Gb的傳輸速度,還是得要看儲存設備它的IO的能力,是否真的能夠達到這麼高。一輛跑車可以在德國無速限高速公路跑到時速250公里以上,並不是因為他的輪子很會跑,而是他的引擎很會跑。

而且IPSAN還可以利用MPIO(Multi-path Input Output)的方式同時驅動兩個或以上的網路介面去做存取,只要你的儲存設備效能夠快,網路的頻寬基本上不會是太大的問題。這是使用IPSAN可以得到的好處,也是本機的儲存陣列沒有辦法達成的地方。同時它還可以多台主機透過網路共用一套儲存設備,減少每台主機都要採購儲存空間及不必要的浪費,同時也可以藉由這樣的方式,提升整個儲存的可靠度,並減少備份所需要花費的時間與成本。

給大家一個題目思考一下,一個儲存設備,不管是 IPSAN或本機的磁碟陣列,IOPS (Input/Output per second)可以達到100,000,這樣的儲存設備算不算好?

廣告

儲存設備的快照是否可以拿來當成備份用途?

快照不是免費的!!!!

快照不是免費的!!!!

快照不是免費的!!!!

因為很重要,所以要說三次!

很多人以為快照是一個備份的方案,其實快照並不是用來作備份的。我們俗話說,救急不救窮,快照就是屬於救急的一個方案。你想看看如果你的檔案,被使用者不小心刪除了,而且刪除的檔案是一、二千個,簡單說就是一個目錄,那你要怎麼樣可以快速的把使用者的檔案存回到他的原本目錄去呢?這時候快照就派上用場了! 快照就像是時光回溯機一樣,你可以在不同的時間點,根據不同的用途去做檔案系統的快照。但是既然他是快照,就是有所謂的使用期限的;換句話說,你在短時間內的檔案這個是有效益的,放長的時間來看,這就是一個無效益的檔案,所以他跟備份是一點關係也沒有的。

錯誤的示範

然而很多人卻誤解了快照的用意。反正快照的處理方式非常快速,而且非常的精簡,他可以用大約不到原始檔案的千分之一空間,儲存跟原本一模一樣的檔案數量與容量 ,於是在小聰明的MIS管理下,快照就成了備份的一個項目了,而且只有這個備份。這就造成的像我的一個客戶的實際案例,如下圖一:

GMT snapshot usage

(圖一:folder 的總使用量與真正資料跟快照資料分別使用量)

 

各位可以看到,這個的總使用空間大約是13.3TB,真正的資料量其實還不到9TB, 有大約4.5TB都是快照佔用的空間。大家可能會覺得很奇怪,快照不是佔用的空間很少嗎?為什麼在這個案例中快照佔用那麼大的空間?那是因為這個客戶把快照當成備份在使用,他的快照的保留份數,日常的日快照保留90天,也就是90份。另外呢! 針對異動量很大的日間的工作目錄,他每個小時又做一份快照,而這一份快照一天24小時有24份,這樣的快照要再保留7天,所以各位可以算一下他的快照份數其實是超過400份。而且快照的期間是超過90天,當然他的快照使用空間會很大量!因為這是一個錯誤的使用,客戶應該是要把快照跟備份分開來!

GMT volume IO

(圖二:客戶的volume存取每秒資料存取量,並非是少量存取)

GMT snapshot hourly

(圖三:客戶的folder 異動量,並非是少量異動)

 

TrzeNAS 如何作效能的提昇 – 增加 SSD

TrzeNAS 的效能提昇 – 增加SSD能提昇到如何的效能

先前有一篇討論到 TrzeNAS 的效能壓測結果,連結如下:

https://wordpress.com/read/feeds/48736712/posts/1071930370

在那篇裡面,可以看到IOPS 很高,但是 IO Response Time 也高,在一般的應用下,是足夠的;但是如果在一個 mission critical 的環境下,可能就會顯得不足。我在前一篇也提到,TrzeNAS 的效能不只如此而已,給它資源,它一定會回報。

所有的測試環境都跟之前一樣:

壓力測試軟體:IOMeter 2006.7.27 ,測試樣本存在我的雲端硬碟https://drive.google.com/file/d/0Bw4Yre7OzRuBNGUzSHpBTk84dGc/view?usp=sharing

壓力測試主機:Dell R720XD, CPU: E5-2609V2 * 1,RAM: 16GB,OS: Windows 2008R2,NIC: 10Gb * 1。

受測儲存設備:TrzeNAS T2112s,RAM:32GB(Max.),HD: 2TB 7200RPM SATA HD * 6,NIC: 10Gb * 1。但多加了一顆SSD當寫入快取。

結果如何呢?

IOPS從原來的8300一下提昇到30000,快了近四倍;重要的是 IO Response Time 降到4ms,將近原來的四分之一,整體的效能比起傳統的儲存設備全15KRPM 的SAS硬碟相同容量還要再快上許多! 而這就是 TrzeNAS 能展現出來的效能!

TrzeNAS 32GB IOPS wlog

TrzeNAS 的效能測試

這是 TrzeNAS 的IOPS 效能測試,在我們的 lab 中測試的

先前有提到效能的測試,可能大家都沒有一個標準。我個人認為每個人可以作到的,大約就是儘量拿相同版本、相同樣本的測試範本,再來作個效能的比較。以下是我在公司作的結果,環境如下:

壓力測試軟體:IOMeter 2006.7.27 ,測試樣本存在我的雲端硬碟 https://drive.google.com/file/d/0Bw4Yre7OzRuBNGUzSHpBTk84dGc/view?usp=sharing

壓力測試主機:Dell R720XD, CPU: E5-2609V2 * 1,RAM: 16GB,OS: Windows 2008R2,NIC: 10Gb * 1

受測儲存設備:TrzeNAS T2112s,RAM:32GB(Max.),HD: 2TB 7200RPM SATA HD * 6,NIC: 10Gb * 1

從下圖可以看到,我作壓測是用 iSCSI 的協定在走,以上環境是沒有用MPIO(所以10Gb NIC 都只有用一個埠)。壓測的 sample file 是32GB,出來的IOPS 是8300左右(這是IOPS 打10分鐘的結果)。

但是因為用 7200RPM 的SATA HD 的關係,所以它的 Response Time 是高的,意味著,如果以這樣的配置去跑應用程式,在一定量的 IO 下,是可以跑的動,但使用者會感覺應用程式反應慢,效能差。所以如果以上的應用在不需快速反應的應用程式下,是一個很好的選擇。

TrzeNAS 32GB IOPS

有沒有方式可以提昇 TrzeNAS 的 Response Time 效能呢?當然有,錢花下去一定會有效果的。請期待!

儲存設備的效能測試

你知道你買的儲存,到底可以呈現多快的效能(IOPS / Thoughput)嗎?

很多時候,使用者買了儲存能夠了解的,就只有買了多少容量(Capacity),而且有的時候,買的容量是祼容量(Raw Capacity)或是可用容量(After RAID Capacity)都還沒能搞清楚,更不用說以現有購買的規格,它到底能提供多少效能,不管是IOPS 或是 Throughput。所以到最後,使用者能比較的,大概就只有機器的規格,可是機器的規格,真的就能代表它的效能嗎? 答案是否定的!最明顯的是 NetApp 的FAS產品了,如果有興趣去查一下它的機器規格,CPU都是五六個世代以前的,可是它的展現出來的整體效能,真的是不錯的!

儲存設備的效能測試是否有一個公證的標準?

曾經有客戶問過我這個問題,就我知道,其實對於效能測試,並沒有一個公開的組織在定義它(如果有人知道請告訴我);唯一一個大家會比較信任的,是 spec.org 這個組織作的效能測試,可是它的作法還是一個黑箱作業,外界根本不知道它們是如何調整儲存與受測主機的參數,所以使用者買了相對的機種,也根本達不到受測機種的效能,當然還有一個最重要的因素,使用者根本沒買到跟受測機種一模一樣的規格(硬碟種類、顆數,是否有SSD作快取…..等)。最近還有一個公家機關的儲存採購規格就明定了這樣的一條規範,要買的儲存必須送過 spec 作過效能測試,但是買的規格又不如受測機種的規格,想當然,這……..應該又是另一種……..

儲存設備該要如何測試它的效能是否如廠商宣稱的?

以下我提個人主觀的看法,歡迎有其它相法或意見的人來討論。

首先要注意以下幾點:

  1. 測試的主機必須是同一台,不管是Windows 或是 Linux
  2. 測試的壓測軟體必須是同一套,同一個版本,裝在測試的機器上。
  3. 測試的模型必須是相同的,壓測容量是1G、10G、或100G,測試讀跟寫的比例是固定的如7:3或5:5,是否有 QD(Queue Depth)或是 multi-thread 等。

所以有限定那一套嗎?沒有啦!除了某些原廠自己提供的測自己的都很優,測其它的都不優以外,其它都可以拿來參考!以下幾個我們常用的:

  1. CDM (Crystal Disk Mark),Windows Only
  2. AS SSD,Windows Only
  3. IOMeter 2006.7.27,Windows and Linux
  4. IORate,Linux Only

雖然有些人會說,拿某個來測不準,但我要說的是,壓測它是一個相對的比較,沒有什麼準不準的問題。因為沒有一個公正的標準!(記得有的話跟我說一下)

Nexenta 或 TrzeNAS 的測試效能如何?

這個後面再來一個個討論!