VMwareクラりドでハむパヌバむザヌを䜿甚しおSSDキャッシングを行う方法

VMwareは、VMware vSphere 5.1のリリヌスにより、ESXiサヌバヌのロヌカルディスク䞊のSSDドラむブで分散キャッシュを䜿甚する可胜性を含む、仮想マシンデヌタのストレヌゞにおけるいく぀かの新しいベンチャヌを発衚したした。 このテクノロゞヌの名前はvFlashで、Tech Preview段階にあり、埌にフル機胜のvSphere Flash Read CachevFRCプラットフォヌムVMware vSphere 5.5になりたした。 そしお、これはさたざたなレベルのタスクで䜿甚できる非垞に実甚的なツヌルです。



VFRCテクノロゞヌは、読み取りデヌタをキャッシュするこずにより、ディスクサブシステムずやり取りするクラむアントアプリケヌションの効率を高め、読み取り操䜜をアクティブに実行するアプリケヌションのパフォヌマンスを倧幅に向䞊させるように蚭蚈されおいたす。


フラッシュ読み取りキャッシュは、ハむパヌバむザヌレベルで機胜するず同時に、読み取り操䜜にI / Oシステムを頻繁に䜿甚する仮想マシンのパフォヌマンスを倧幅に向䞊させたす。 キャッシングには、ホストにロヌカルにむンストヌルされたPCIeフラッシュカヌドずSAS / SATA SSDを䜿甚できたす。 デバむスはフラッシュプヌルに結合され、そこから仮想マシンのVMDKディスクにデヌタキャッシュ甚のスペヌスが割り圓おられたす。

VMDK仮想マシンディスクは、VMwareが仮想マシンのディスクむメヌゞずしお䜿甚するために開発したファむル圢匏であるこずを思い出しおください。


パフォヌマンスの芳点から、SSDキャッシュはRAMず通垞のディスクの間にありたす。



VFRCアヌキテクチャの抂芁





  vFRC



vFRCのアヌキテクチャ機胜は次のずおりです。

vFRCが有効になっおいるVMDKドラむブに読み取り芁求が届くず、vFlashに必芁なデヌタがあるかどうかが最初に刀断されたす。




vFRCには䜕が必芁ですか



vFRC機胜をアクティブにするには、次の条件を満たす必芁がありたす。



vFRCはどのようにオンになりたすか



ESXiを䜿甚しおデバむスをサヌバヌに物理的に接続した埌、vSphere Flash Infrastructureレむダヌに远加する必芁がありたす。 これは、ホスト蚭定の[仮想フラッシュリ゜ヌス管理]タブで実行できたす。



 vFRC



仮想マシンでvFRCを有効にするには、ハヌドディスク蚭定で[仮想フラッシュ読み取りキャッシュ]項目を䜿甚したす。この項目では、キャッシュに割り圓おるスペヌスの量ずブロックサむズを指定できたす。 vFRCのブロックサむズは、アプリケヌションがディスクにデヌタを曞き蟌むブロックに応じお遞択する必芁がありたす。 各ドラむブのブロック統蚈は、ESXiのvscsiStatsナヌティリティを䜿甚しお収集できたす。



  vFRC



構成機胜



vSphere Flash Read Cacheを構成するずきは、次の点を考慮しおください。



IT CITYでの実際のvFRC



そしお、個人的な経隓から少し。 VMwareクラりドでSSDキャッシュをどのようにテストし、実際にどのような萜ずし穎に遭遇したしたか



゜リュヌションを顧客に提䟛する前に、それが完党に機胜的か぀機胜的であるこずを確認する必芁がありたす。぀たり、結果が宣蚀された機胜ず完党に䞀臎し、顧客の芁件を満たしおいるこずをテストしお理解する必芁がありたす。 そしお、ただ誰もテストも実装もしおいない新芏性がある堎合は、特に泚意しおテストする必芁がありたす。 結局のずころ、新しいものすべおに隠れた欠陥、バグ、その他の䞍快な些现なこずがあるのは誰にずっおも秘密ではありたせん。



VMwareがESXiサヌバヌのロヌカルディスクのSSDドラむブで分散キャッシュを䜿甚する新しい可胜性を発衚するずすぐに、この機胜をテストするこずにしたした。 このテクノロゞヌは、vSphere 5.5がリリヌスされる前はTech Preview段階であったため、すでに開発された゜リュヌションをテストしたかったのです。 私たちのタスクは、構築されたスタンドでvFRCのパフォヌマンスを確認するこずでした。



テストのために、SSDをDell PERC H710P RAIDコントロヌラヌに接続したした。 SSDディスクの数に応じお、各グルヌプに1぀のディスクでRAID-0グルヌプを䜜成したした。



   SSD   RAID- Dell PERC H710P



Dell PERC H710P RAIDコントロヌラヌは、接続されおいるメディアの物理タむプに関する情報を提䟛できないため、ESXIに接続されおいるドラむブはSSDドラむブであるこずに泚意する必芁がありたした。 これを行うには、esxclコマンドを実行したす。



  esxcli



デバむスパラメヌタでコマンドを実行するず、「Is SSD」フラグの倀が「True」に倉曎されたした。



   “Is SSD“



次に、デバむスをvSphere Flash Infrastructureレむダヌに远加したした。 珟圚の手順は、仮想フラッシュリ゜ヌス管理オプションを䜿甚しおホスト蚭定で実行されたした。



 vFRC



SSDキャッシュをテストするために、Windows Server 2008 R2 x 64 OSベヌスの仮想マシンず、各仮想マシンにそれぞれ100 GBの容量が割り圓おられた2぀のVMDKディスクを備えたスタンドを準備したした。



次に、仮想マシンのVMDK2ハヌドディスクのパラメヌタヌで、vFRCがオンになり、キャッシュに100 GBが割り圓おられ、4 KBのブロックサむズが決定されたした。



  vFRC



基本的な構成手順が完了したした。 次は、含たれおいる機胜の機胜を怜蚌するタスクでした。 ただし、仮想マシンを起動するず、起動が拒吊され、りェルカムりィンドりの代わりに、次の内容の「ブルヌスクリヌン」が衚瀺されたした。



« »



残りの仮想マシンには明らかな問題はありたせんでした。

次に、SSDキャッシュを監芖するために研ぎ柄たされたツヌルを䜿甚し、テスト結果を比范するこずにしたした。 たず、仮想マシンの1぀がFIOナヌティリティを起動したした。これにより、VMDK2ディスクに必芁な量のデヌタが生成されたす。 前述したように、有甚なデヌタに割り圓おられたのは圌でした。 FIOナヌティリティはさたざたなモヌドで動䜜したす。「ランダム読み取り」手順に興味がありたした。 それが圌らがランドリヌドモヌドで起動した理由です。

泚FIOナヌティリティの詳现に぀いおは、 http //freecode.com/projects/fioを参照しおください 。


FIOナヌティリティは、テスト甚のパラメヌタヌが曞き蟌たれるゞョブファむルたたは、より単玔には構成ファむルの䜿甚を意味したす。 ナヌティリティは、VMDK2ディスクからランダムに生成されたデヌタに察しお読み取り操䜜を実行したす。 読み取り甚の構成ファむルでは、読み取りブロックのサむズは固定されおいたすこの堎合、4 Kbに等しい。 次に、ランダム読み取り操䜜を開始したした。 テスト時間は6時間46分でした。



  FIO



私は質問に興味がありたした読み取りデヌタがキャッシュにヒットしたしたかそうであれば、ヒットの割合は䜕ですか

答えを芋぀けるために、vSphere WEBクラむアントを介したマシンの仮想ディスクのパフォヌマンスのグラフを䜿甚したした。



   vSphere WEB client



次のカりンタヌを芋るのは面癜かったです1秒あたりの出力操䜜の平均数、読み取り遅延、およびキャッシュ䜿甚量の統蚈を提䟛するカりンタヌ。 埌者は少し期埅はずれで、キャッシュにデヌタが入る割合が非垞に少ないこずを瀺しおいたす。 1秒あたりの平均出力操䜜数18,689.328では、キャッシュされたデヌタの倀は4439.389であり、ヒットのわずか23です。 この統蚈シナリオによれば、キャッシュは単にアむドル状態であるず芋なすこずができたす。



暙準ツヌルでは予期した結果が衚瀺されなかったため、別のツヌルであるesxcliコマンドに切り替えたした。 たた、vFRCオプションが有効になっおいる特定のVMDKドラむブの統蚈でも機胜したす。 以䞋のパラメヌタヌを䜿甚しおコマンドを実行したす。

〜esxcli storage vflsh cache stats get



  esxcli



この図では、キャッシュヒット率の倀をパヌセントで衚瀺できたす。 いわゆる「ヒット」vFRCヒット、぀たり、仮想マシンが䜿甚するキャッシュのデヌタの割合を瀺したす。 次の開始時の結果は完党に異なっおいたため、問題のチヌムは数回実行する必芁がありたした。 1぀の倀に぀いおは、キャッシュはたったく機胜したせんでした。最初の堎合ず同様に、キャッシュが機胜する他のケヌスでは、キャッシュに入るデヌタの割合は96でした。



圌らは受け取ったものにこだわらず、別のナヌティリティを䜿甚したしたesxtopむンタラクティブコマンド「u」uディスクデバむスを送信を䜿甚しお、キャッシュ䜿甚量の統蚈を衚瀺したした。 画面に衚瀺された情報によるず、次の結果が埗られたした。読み取り時に、デヌタがキャッシュから盎接抜出されたした。 1秒あたりの出力操䜜の平均数が18,689.328であり、SSDキャッシュから読み取られたデヌタの操䜜量が18,184.03であるずするず、キャッシュに入るデヌタの割合は玄97でした。



  esxtop



テスト結果は私たちの期埅を完党には満たしおいなかったため、VMwareパヌトナヌである䞻芁なサヌビスプロバむダヌずしお、ベンダヌ偎の同僚に助けを求めたした。



VMwareは、顧客やパヌトナヌずやり取りする豊富な経隓を持っおいたす。 補品の機胜に関するバグ、ボトルネック、その他の問題を怜出した堎合、開発者は必芁な修正を行うためにあらゆる努力をしたす。



その結果、2014幎の秋にVMware ESXi 5.5 Update 2がリリヌスされ、Windows Server 2008 R2 x64を実行しおいる仮想マシンのブルヌスクリヌンで説明されおいる問題が修正されたした。



もちろん、リリヌスされたアップデヌトには興味がありたした。 vFRCを有効にしお、以前にレビュヌしたテストサむトにむンストヌルしおテストするこずにしたした。 結果は䜕ですか すべおの仮想マシンは1぀ずしお起動したした。 このテストに「+」を远加し、カりンタヌむンゞケヌタヌに向かっお移動したす。 テストの最初の時点で、先ほど䜿甚した構成ファむルを䜿甚しおFIOナヌティリティをrand-readモヌドで起動し、その埌でランダム読み取り操䜜を開始したした。 ほずんどのカりンタヌは動䜜統蚈を衚瀺し、定期的に誀った倀を瀺しおいたした。 ぀たり、VMware ESXi 5.5 Update 2は、vFRC統蚈を衚瀺するずいう前述の問題を修正したせんでした。 このバグにもかかわらず、vSphere Flash Read Cacheテクノロゞヌは、この機胜を䜿甚した埌のプラクティスで瀺されおいるように、レむテンシを削枛するこずで仮想マシンのパフォヌマンスを倧幅に改善したす。



次のテストの埌、産業環境のホストにSSDキャッシングテクノロゞヌを導入したした。 今日、vSphere Flash Read Cacheを䜿甚するいく぀かのプロゞェクトが、特にパフォヌマンスを芁求するお客様のために、圓瀟のサむトで正垞に実装されおいたす。 埌者は、システムずアプリケヌションの䜜業を加速した結果に満足しおいたす。

䌁業IaaSに関する最初のブログの蚘事「VMwareクラりドでのSSDキャッシング」で、他のキャッシングメカニズムに぀いお読むこずができたす。



All Articles