アルテッツァの造り方

最近ロードバイクとCitrixXenAppネタばかり

LSI SAS2208 でCacheCade 2.0 Proを試す

仕事で富士通製サーバー PRIMERGY RX200 S8を使って仮想環境を構築する作業があったのですが、ストレージ構成としてSSD+SASを使ったフラッシュキャッシュを構築したのでパフォーマンスを測ってみました。

構成

サーバー:Fujitsu PRIMERGY RX200 S8
CPU:Intel Xeon E5-2650 (2.6GHz 8core)× 2プロセッサ(16物理コア/32論理プロセッサ)
MEM:128GB
Storega
Controller:RAID Ctrl SAS 6G 1GB(D3116C) LSISAS2208 + CacheCade 2.0 Pro
ディスク:100GB SSD × 2(RAID1) / 300GB 10K SAS × 6 (RAID6)
仮想化:VMware ESXi 5.1 Update2

ストレージ設定

100GB SSD 2本をRAID1で束ねてCacheCade 2.0でフラッシュキャッシュ化します(OSからは使用可能領域として認識されません)。書込みモードは「Always Write Back」に設定します。(顛末は後述)
300GB 10K SAS 6本はRAID6とし論理ドライブを10GBと1.08TBに分け、10GBのドライブにVMware ESXi 5.1 Update2をインストールします。1.08TBの論理ドライブにはCacheCadeのフラッシュキャッシュを有効化、更に書込みモードを「Always Write Back」に設定します。

書き込みモードですが「Always Write Back」はBBU等のキャッシュメモリ保護機能の搭載有無を問わず、問答無用でコントローラー上のキャッシュを有効化します。「Write Back」ではBBU等のキャッシュメモリ保護機能が搭載されていない場合、コントローラ上のキャッシュが無効化されます。

つまり、「Always Write Back」を選択した場合キャッシュからRAIDアレイにデータを書き込んでいる最中に停電や物理障害等で電源がブチ落とされた場合、データは損傷を受ける可能性が高いです。しかしBBUの搭載が必須かと言うとそうではなく、UPS等で停電から守る場合は「Always Write Back」を利用する手もアリと思います。ただし物理障害時のデータロストには保護が効きませんが、物理障害の場合は諦めもつくでしょうし、そのためのバックアップを取得しているはずです。

今回の構成では1.08TBのデータストア用領域はバックアップを取得するのでデータロストになっても問題ありません。OS領域の10GBは「Write Through」なので耐障害性は高いと思われます。ESXiが生きていればRAIDを再構築してバックアップからデータを復元すれば良いだけです。

仮想マシン

ESXiを起動して1.08TBの領域をデータストアとして認識させます。その上に Windows Server 2008 R2をインストールします。vCPUは6個、メモリは32GB、ディスクは146GBで設定しました。

測定結果

お待ちかねの測定結果です。ベンチマークソフトはお決まりのCrystalDiskMarkです。
1回目・・・・・
IMG_5778
何だかSSDのパフォーマンスそのものって感じです。Writeが遅いのはこんなもの・・・なのかな?それでも普通にRAID6のデータストアにアクセスするよりメチャクチャ速いですよ!!

しかしここで、RAID構築の際に書込みモードを「Write Back」にしていた疑惑を思いつきました。再度Web BIOSで設定を確認して「Always Write Back」に設定します。すると・・・・
IMG_5947
うははは!爆速ですよ!! 仮想化レイヤーが間に挟まっていてこれだけのパフォーマンスが出ているので、素の物理にOS入れたらもっと速いのでしょう。
ちなみに、キャッシュは1GBなのでテストデータが1000MBを超えるとキャッシュから溢れてしまい上記のパフォーマンスは出なくなります。

キャッシュの効果

仮想マシンを5つ作って、OSインスコ、Microsoft Update、XenAppインスコを同時並行で進めていたのですが、後から作業を始めたマシンが先にスタートしたマシンに追いつくんですよね。キャッシュ化するときに学習しているようで、よく利用されるものはどんどん速くなるようです。同じ環境を5台用意して全く同じ作業を実施したので、後から開始した方がキャッシュのヒット率が高くなり速くなっていたものと考えられます。

XenAppサーバーにSSDキャッシュは必要か?

CacheCade はI/O要求が厳しいデータベースサーバーやWebサーバーへ利用するのがより効果が高い、と言われている様です。じゃぁXenAppには不要か・・・と言うとそんな事ない。朝イチのログオンストームにハマって遅い遅いとクレームを入れてくるユーザーの為に、裏側ではこんな仕掛けを用意してより快適にお使い頂こうと考えているのです。

↓ブログ村のランキングに参加しています。ポチっと押して頂けると嬉しいです♪ にほんブログ村 自転車ブログ ロードバイクへ

-Citrix関連技術