メモリ使用率

XenServerホストでのメモリ占有量を計算する場合、考慮すべき2つのコンポーネントがあります。1つはXenハイパーバイザー自体が消費するメモリ、2つ目は、ホストのコントロールドメインが消費するメモリです。コントロールドメインは「Domain0」または「dom0」とも呼ばれ、XenServerの管理ツールスタックを実行するセキュアな特権Linux仮想マシンです。コントロールドメインは、XenServerの管理機能を提供するほか、ユーザーが作成した仮想マシンに物理デバイスへのアクセスを提供するドライバスタックも実行します。

コントロールドメインのメモリ

コントロールドメインに割り当てられるメモリの量は、物理ホストの物理メモリの量に基づいて自動的に調整されます。

ホストメモリ(GB) 割り当てられたコントロールドメインメモリ(MB)
20~24 752
24~48 2048
48~64 3072
64~1024 4096

注:

XenCenterのXenServerセクションのレポートには、コントロールドメイン(dom0)、Xenハイパーバイザー、クラッシュカーネルにより使用されているメモリ量が含まれます。XenCenterには、上記のメモリ量よりも大きな値が表示される場合があります。多くのメモリを搭載したホスト上では、ハイパーバイザーにより使用されるメモリ量も大きくなります。

コントロールドメインに割り当てられるメモリ量の変更

コントロールドメインに割り当てられたメモリを、より少ないメモリを搭載したホスト(16GB未満)のデフォルトの752MBよりも少なくすることができます。ただし、Citrixはコントロールドメインに400MB未満のメモリを割り当てることをお勧めしません

  1. XenServerホストのローカルシェルを開き、ルートユーザーとしてログオンします。

  2. 次のように入力します:

    /opt/xensource/libexec/xen-cmdline --set-xen dom0_mem=<nn>M,max:<nn>M
    

    <nn>に、コントロールドメインに割り当てるメモリ量をMB単位で指定します。

  3. XenCenterでまたはrebootコマンドを使用して、XenServerホストを再起動します。

    ホストが再起動したら、コンソールでfreeコマンドを実行してメモリ設定を確認します。

警告:

コントロールドメインに割り当てるメモリ量を増やすと、仮想マシンで使用できるメモリが減少します。

コントロールドメインメモリテーブルに表示された値以上のメモリ量をコントロールドメインに割り当てることもできます。ただし、この操作はCitrixサポートの指示に従ってください。

仮想マシンで使用できるメモリの確認

仮想マシンに割り当てることができるホストメモリの量を調べるには、memory-freeを実行してホストの空きメモリの値を取得します。次に、コマンドvm-compute-maximum-memoryを使用して、仮想マシンに割り当てできる実際の空きメモリ量を取得します。例:

xe host-list uuid=host_uuid params=memory-free
xe vm-compute-maximum-memory vm=vm_name total=host_memory_free_value