動的メモリ(Dynamic Memory)とは、仮想マシンに割り当てるメモリの量を、必要に応じて増減する機能です。
そうすることにより、効率的にメモリを利用することができます。
動的メモリは、Windows Server 2008 R2から導入された機能です。
しかし、動的メモリにもデメリットがあります。
例えば、与えられたメモリをすべて使い切るように設計されているアプリケーションを動かす場合には、すぐにメモリが枯渇してしまうでしょう。
しかし、仮想マシンを停止することなく、メモリを追加できるHot-Add機能は魅力的です。
では、動的メモリ(Dynamic Memory)を使わずにHyper-VのHot-Addを有効にすることが可能なのでしょうか。
動的メモリ(Dynamic Memory)に関係するメモリの設定値
動的メモリ(Dynamic Memory)は3種類のメモリ設定値に基づいて動作します。
初期値:仮想マシンが起動する際に確保するメモリ量です。仮想マシンの動作中に変更することはできません。
最小値:仮想マシンが利用する最小のメモリ量です。VM稼働中でも、この値までメモリ使用量を削減することができます。
最大値:仮想マシンが利用する最大のメモリ量です。VM稼働中でも、この値までメモリ使用量を増加させることができます。
例えば、初期値2048MB、最小値1024MB 、最大値4096MBと設定した場合、VMは1~4GBまでの間で、必要に応じてメモリ使用量を増減させます。
しかし、動的メモリは使いたくないが、Hot-Add機能だけは用いたいという場合があるかもしれません。
動的メモリ(Dynamic Memory)を使わずにHyper-VのHot-Addを有効にする
そのような場合には、初期値・最小値・最大値を同じ値に設定します。
例えば、すべて2048MBに設定します。
そののち、Hot-Addする必要が生じたら、最大値だけを4096MBに変更して、メモリをHot-Addできる状況を作り出します。
その後、仮想マシンをシャットダウンできるメンテナンスのときにでも、初期値・最小値・最大値を4096MBに揃えて、メモリが勝手に増減しない状況を再び作り出します。
こうして、技術的には、動的メモリ(Dynamic Memory)を使いながらも、メモリの使用量を完全にコントロールすることができ、必要に応じてメモリのHot-Addを行える環境を作ることが出来ます。
コメント