Japanese

 View Only
  • 1.  オーバーコミット時にホストメモリ使用率が常に80%を超える

    Posted Feb 28, 2012 01:19 PM

    まだ利用し始めです。初歩的な質問と思いますが、下記の認識で正しいでしょうか?

    vSphere4.1U1を利用しています。

    ESXiホストの物理メモリに対し、全仮想マシンの割り当てメモリ合計がオーバーコミット状態になっています。

    ただ、ほとんどの仮想マシンは構築途中のためにほとんど稼動しておらず、それぞれで有効なメモリはごくわずかな状態にあります。

    この場合でも、各仮想マシンは消費メモリとしては相当な値になっており、ESXiホストとしてメモリ使用率が常に80%超という状態になっています。

    消費メモリは各仮想マシンの割り当てメモリから共有メモリ分を引いて、共有メモリを按分した値を足したものという認識です。

    つまり、上記の状態は正しい状態であり、全ての仮想マシンとしては特に性能問題に直面していないものの、ホストとしてはメモリ使用率が高い状態にあるという一見するとどこかに性能問題があるかのような状態と考えればよいでしょうか?

    ただ、複数の仮想マシンでそれぞれメモリの使用率があがり始めると性能問題がでる可能性を常に持っているという事でよいでしょうか?

    現状、ホストのメモリ使用率のアラーム設定で常に警告状態にありますが、これをどう扱うべきか悩んでいます。

    仮にそれぞれの仮想マシンの処理ピークがばらばらで、性能問題にぶつかる事がないという場合でも、常に警告状態で運用するというのは望ましくないと考えています。

    認識についてのご指摘や、現状についてのアドバイスなどあればお願いいたします。



  • 2.  RE: オーバーコミット時にホストメモリ使用率が常に80%を超える

    Posted Feb 29, 2012 10:14 AM

    はじめまして。

    ESXiホストの物理メモリに対し、全仮想マシンの割り当てメモリ合計がオーバーコミット状態になっています。

    ただ、ほとんどの仮想マシンは構築途中のためにほとんど稼動しておらず、それぞれで有効なメモリはごくわずかな状態にあります。

    この場合でも、各仮想マシンは消費メモリとしては相当な値になっており、ESXiホストとしてメモリ使用率が常に80%超という状態になっています。

    「有効なメモリ」とは「アクティブなゲストメモリ」の事を指していますでしょうか。

    もしそうであればですが、「アクティブなゲストメモリ」とは、頻繁にアクセスされているメモリ領域の事を指しています。

    言い換えれば、ゲストで業務が何も動いていなければ(=メモリへのアクセスが少なければ)、メモリは実際には使用

    されてはいるものの、この「アクティブなゲストメモリ」の数字は小さくなります。

    つまり、上記の状態は正しい状態であり、全ての仮想マシンとしては特に性能問題に直面していないものの、ホストとしてはメモリ使用率が高い状態にあるという一見するとどこかに性能問題があるかのような状態と考えればよいでしょうか?

    オーバコミット状態ですから、ゲストがメモリを必要としていなければ性能的な問題は表面化しませんので、

    その通りかと思います。

    ただ、複数の仮想マシンでそれぞれメモリの使用率があがり始めると性能問題がでる可能性を常に持っているという事でよいでしょうか?

    オーバコミット状態の時点で、メモリ不足となり性能劣化する可能性を潜在的にはらんでいます。

    性能を重視するのであれば、そもそもオーバコミット状態にすべきではありません。

    現状、ホストのメモリ使用率のアラーム設定で常に警告状態にありますが、これをどう扱うべきか悩んでいます。

    仮にそれぞれの仮想マシンの処理ピークがばらばらで、性能問題にぶつかる事がないという場合でも、常に警告状態で運用するというのは望ましくないと考えています。

    そこを気にされるのであれば、オーバコミット状態を辞めた方が良いと思います。



  • 3.  RE: オーバーコミット時にホストメモリ使用率が常に80%を超える

    Posted Feb 29, 2012 02:46 PM

    ご回答ありがとうございます

    およそ私の認識で問題ないという事かと思います。

    CPUの場合は、各仮想マシンの仮想CPU使用率の合計でホストのCPU使用率に(ほぼ)なりますが、同様にメモリの場合は各仮想マシンのアクティブなゲストメモリの合計がホストのメモリ使用率になるというイメージでした。

    消費の合計がホストのメモリ使用率という事であれば、本当にメモリを利用しているところと、ホストメモリ使用率にはギャップがあると思うので、何をもって障害検知とすればよいのだろうか、というのが疑問です。

    リソースの有効活用という意味では、多少のオーバーコミットもして行きたいというのも本音なので、ホストメモリ使用率が高くなっても性能に実害がなければ障害検知したくないところです。アクティブなメモリの合計が高くなってきた時に障害検知できるかどうかというところです(vCenterにはこのアラーム設定が無いようです)。