Quantcast
Channel: VMware Communities: Message List
Viewing all articles
Browse latest Browse all 224018

Re: Hypervisor上の書き込みキャッシュの有無について

$
0
0

こんにちは


こんな情報ではどうでしょうか。


仮想マシンからファイバ チャネル SAN 上のデータへのアクセス方法
http://pubs.vmware.com/vsphere-51/topic/com.vmware.vsphere.storage.doc/GUID-3A05795A-283F-4959-AD81-FAC61FD8D456.html

 

上記マニュアルより。

仮想マシンが SAN 上の仮想ディスクと通信するとき、次の処理が実行されます。

1 仮想マシンのゲスト OS が SCSI ディスクに読み書きするとき、仮想ディスクに対して SCSI コマンドが発行されます。
2 仮想マシンのオペレーティング システムのデバイス ドライバが仮想 SCSI コントローラと通信します。
3 仮想 SCSI コントローラは、コマンドを VMkernel に転送します。
4 VMkernel は次の処理を実行します。
  a ゲスト仮想マシン ディスクに対応する VMFS ボリュームにファイルを配置します。
  b 仮想ディスクに対するブロックの要求を、適切な物理デバイスのブロックにマッピングします。
  c 変更した I/O 要求を VMkernel のデバイス ドライバから物理 HBA に送信します。
(以下略)

仮想マシンのストレージに対する 読み/書き を、
ESXiのVMkernelが物理的な場所にマッピングしているようです。
そのため、

  • ESX/ESXi のHypervisor上では、ゲストOSのキャッシュはしない。
    (ハイパーバイザ自体のファイルや、VMFSのメタデータとかはキャッシュするのかも)
  • ゲストOSからディスクへ書き込み要求は、ESXiのキャッシュは使わず、直接ストレージへ。

となるはずです。

 

あとは、Genzさんのコメントにもあるように、

少なくともESXでは物理と同様に動くようです

VMware KB:    Storage IO crash consistency with VMware products 

 

基本的には、

「ハードウェア上のコントローラーに書き込みが完了した時点でゲストOSに完了通知」

という考えでよいのでしょう。

 

以上です。参考になりますでしょうか。


Viewing all articles
Browse latest Browse all 224018

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>