XenCenter

仮想マシンのメモリ設定

仮想マシンを作成するときに、特定のメモリ量を割り当てることができます。XenServer環境の物理メモリの使用率を向上させるには、動的メモリ制御(Dynamic Memory Control:DMC)を使用します。DMCは、VM間のメモリの動的な再割り当てを可能にするメモリ管理機能です。

XenCenterの[メモリ]タブには、仮想マシンやサーバーのメモリ使用量や設定に関する情報が表示されます。

  • サーバーの場合は、使用可能なメモリの合計と現在のメモリ使用量が表示され、そのサーバー上の仮想マシンにどのように割り当てられているかを確認できます。
  • 仮想マシンの場合は、現在のメモリ使用量に加え、仮想マシンのメモリ設定の情報も確認できます。その設定には、DMCが有効かどうか、および現在の動的最小/最大メモリの設定値が含まれます。このタブでDMC構成の設定を編集できます。

[メモリ]タブでは、同じメモリ設定の仮想マシンがグループ化されます。このため、個々の仮想マシンや仮想マシンのグループのメモリ管理を行えます。

注:

Red Hat Enterprise Linux 8、Red Hat Enterprise Linux 9、Rocky Linux 8、Rocky Linux 9、またはCentOS Stream 9 VMでは、Dynamic Memory Control(DMC)機能を使用できません。これらのオペレーティングシステムは、Xenハイパーバイザーによるメモリバルーニングをサポートしていないためです。

動的メモリ制御(DMC)

動的メモリ制御(メモリの動的最適化メモリオーバーコミット 、またはMemory Ballooningとも呼ばれます)では、実行中の仮想マシンのメモリが自動的に調節されます。

  • 動的メモリ制御では、各仮想マシンに割り当てられたメモリ量を特定の範囲内で増減します。
  • 動的メモリ制御ではパフォーマンスを維持します。
  • 動的メモリ制御により、サーバーあたりの仮想マシン密度を向上させます。

DMCが無効な場合、サーバー上に使用可能なメモリがないときに追加の仮想マシンを起動しようとすると、メモリ不足によるエラーが発生します。この問題を解決するには、既存の仮想マシンに割り当てたメモリ量を減らして、各仮想マシンを再起動しなければなりません。DMCを有効にすると、XenServerで実行中の仮想マシンのメモリ割り当て量が(管理者が設定した範囲内で)減らされて、追加の仮想マシン用に解放されます。

動的または静的なメモリ範囲

仮想マシンごとに、動的メモリ範囲を設定できます。動的メモリ範囲は、仮想マシンを再起動せずに増減できるメモリ量の範囲を指します。管理者は、実行中の仮想マシンについてこのメモリ範囲を調節でき、仮想マシンを再起動する必要はありません。XenServerでは、仮想マシンに割り当てられるメモリがこの動的メモリ範囲内で維持されます。たとえば、動的最小メモリ量が512MB、動的最大メモリ量が1,024MBの場合、この仮想マシンの動的メモリ範囲は512~1,024MBになります。この範囲内で仮想マシンが動作します。XenServerのDMCを有効にすると、各仮想マシンのメモリが常にこのDMR内で調整されます。

ホストで使用可能なメモリ量が十分な場合、実行中のすべての仮想マシンに動的最大メモリ量が割り当てられます。ホストで使用可能なメモリ量が不十分な場合、実行中のすべての仮想マシンに動的最小メモリ量が割り当てられます。使用可能なメモリがないサーバー上で追加の仮想マシンの起動が必要になると、実行中のほかの仮想マシンのメモリが解放されます。追加の仮想マシン用に必要なメモリは、実行中の各仮想マシンから、指定されたメモリ範囲内で均等に再割り当てされます。

XenServerがサポートするオペレーティングシステムの中には、メモリの動的な増減をサポートしないものがあります。このため、XenServerサーバーが仮想マシンの起動時に最大メモリ量を割り当てる必要があります。ゲストオペレーティングシステムでは、この情報を使用して、ページテーブルやほかのメモリ管理構造のサイズをそれに基づいて決めることができます。XenServer製品でこの機能を実現するために、静的メモリ範囲という概念を使用します。静的メモリ範囲は、仮想マシンの実行中に増減できないメモリ範囲です。動的メモリ範囲は、常に静的メモリ範囲内でなければならないなどの制約を受けます。静的最小メモリ量は、管理者を保護するためのものです。静的最小メモリ量は、XenServerサーバー上でそのオペレーティングシステムが動作するために必要な最低限のメモリ量に設定します。

重要:

静的最小メモリ量にはそのオペレーティングシステムで必要な最低限のメモリ量が設定されているため、この値を変更しないことをお勧めします。静的最大メモリ量に動的最大メモリ量よりも大きな値を設定すると、仮想マシンにより多くのメモリを割り当てなければならなくなったときに、その仮想マシンを再起動しなくても割り当て量を増やすことができます。

動的メモリ制御の制限事項

XenCenterでDMCの値を設定する場合、以下の制限事項に注意してください。

  • 動的最小メモリ量には、静的最小メモリ量よりも大きな値を設定する必要があります。
  • 動的最小メモリ量には、動的最大メモリ量よりも小さな値を設定する必要があります。
  • 動的最大メモリ量には、静的最大メモリ量よりも小さな値を設定する必要があります。
  • 最小動的メモリは静的最大値の少なくとも75%である必要があります。値が低いとゲスト内でエラーが発生する可能性があるため、サポートされません。

仮想マシンのメモリプロパティを設定するときは、上記の条件を満たす任意の値を指定できますが、検証チェックが行われます。これらの条件に加えて、特定のオペレーティングシステムに適用される制限事項もあります。

動的メモリ制御を有効にするには

  1. リソースペインで仮想マシンまたはサーバーを選択して、[メモリ]タブを選択します。
  2. 構成を行う仮想マシンの[編集] ボタンを選択します。
  3. 同じメモリ構成を持つ複数の仮想マシンの場合は、それらの仮想マシンを選択して[次へ]をクリックします。
  4. [自動的に割り当てるメモリ範囲を指定する] オプションを選択します。
  5. 必要な動的なメモリ範囲の最大値と最小値を、スライダーを使うか値を直接入力して設定します。
  6. [OK]をクリックして変更を適用し、ダイアログボックスを閉じます。

動的メモリ制御を無効にするには

  1. リソースペインで仮想マシンまたはサーバーを選択して、[メモリ]タブを選択します。
  2. 構成を行う仮想マシンの[編集] ボタンを選択します。
  3. 同じメモリ構成を持つ複数の仮想マシンの場合は、それらの仮想マシンを選択して[次へ]をクリックします。
  4. [割り当てるメモリサイズを指定する] オプションを選択します。
  5. 割り当てるメモリ量を設定します。
  6. [OK]をクリックして変更を適用し、ダイアログボックスを閉じます。
仮想マシンのメモリ設定