ナビゲーションリンクをスキップ
印刷ビューの終了
| Oracle VM Server for SPARC 3.0 管理ガイド Oracle VM Server for SPARC (日本語)

検索範囲:

- このドキュメント
- ライブラリ全体

## メモリーの動的再構成の使用

Oracle VM Server for SPARC 2.0 リリースには、メモリーの動的再構成が導入されています。この機能は容量に基づき、アクティブな論理ドメインに対する任意の量のメモリーの追加または削除を可能にします。

次に示すのは、メモリー DR 機能を使用するための要件と制限です。

- メモリー DR 操作は任意のドメインで実行できます。ただし、ドメインで同時に実行できるメモリー DR 操作は 1 つだけです。

- メモリー DR 機能では、操作に関与するメモリのアドレスとサイズが 256M バイト単位であることが要求されます。「メモリー配置」を参照してください。

- 空きメモリープールに存在する、この単位に基づかないメモリーは、メモリー DR 機能を使用してドメインに割り当てることはできません。「単位が調整されていないメモリーの追加」を参照してください。

メモリー DR 操作を使用してドメインのメモリーを再構成できない場合、メモリーを再構成する前にドメインを停止する必要があります。そのドメインが制御ドメインの場合、まず遅延再構成を開始する必要があります。

### メモリーの追加

ドメインがアクティブの場合、`ldm add-memory` コマンドを使用してドメインにメモリーを動的に追加できます。指定されたメモリーサイズがドメインの現在のメモリーサイズを超えている場合は、`ldm set-memory` コマンドで動的にメモリーを追加することもできます。

### メモリーの削除

ドメインがアクティブの場合、`ldm remove-memory` コマンドを使用してドメインから動的にメモリーを削除できます。指定されたメモリーサイズがドメインの現在のメモリーサイズよりも小さい場合、`ldm set-memory` コマンドで動的にメモリーを削除することもできます。

メモリーの削除操作には長い時間が必要な場合があります。操作の進捗状況を追跡し、実行中のメモリー DR 要求を取り消すこともできます。

#### メモリー DR 要求の進捗状況の追跡

指定のドメインに対して `ldm list -l` コマンドを実行すると、`ldm remove-memory` コマンドの進捗状況を追跡できます。

#### メモリー DR 要求の取り消し

`ldm remove-memory` コマンドを中断する (Control-C を押す) か、`ldm cancel-operation memdr` コマンドを発行して、進行中の削除要求を取り消すことができます。メモリー削除要求を取り消すと、削除要求の未処理の部分、つまりドメインからまだ削除されていない部分のメモリーのみが影響を受けます。

### 部分的なメモリー DR 要求

動的にメモリーをドメインに追加する、またはドメインから削除するリクエストは、部分的にしか実現されない可能性があります。この結果は、追加または削除にそれぞれ適したメモリーが使用できるかどうかによって異なります。

注 - ドメインから削除されたメモリーは、他のドメインに追加される前にクリアされます。

### 制御ドメインのメモリーの再構成

メモリー DR 機能を使用して、制御ドメインのメモリーを再構成することができます。制御ドメインでメモリー DR 要求を実行できない場合、まず遅延再構成を開始する必要があります。

メモリー DR 操作には長い時間を要する場合があるため、アクティブなドメインから大量のメモリーを削除する場合は、メモリー DR 操作は適さない可能性があります。具体的には、システムの初期構成時には、遅延再構成を使用して制御ドメインのメモリーを減らすようにしてください。

#### 制御ドメインのメモリーを減らす

制御ドメインのメモリーを出荷時デフォルト構成から減らすには、メモリー DR ではなく遅延再構成を使用します。このような場合、ホストシステムのメモリーすべてを制御ドメインが所有します。アクティブなドメインは、要求されたメモリーのすべてを追加できること、またはより一般的には放棄できることを保証されていないため、この目的にメモリー DR 機能は適していません。むしろ、そのドメインで実行されている OS が、要求を最大限に満たすことを試みます。さらに、メモリーの削除操作には長い時間が必要な場合があります。これらの問題は、制御ドメインのメモリーを最初に減らすときのように、大量のメモリー操作が関与する場合にはさらに悪化します。

以上の理由により、次の手順に従って遅延再構成を使用してください。

1. `ldm start-reconf primary` コマンドを使用して、制御ドメインを遅延再構成モードにします。

2. 必要に応じて、制御ドメインにより所有されているホストシステムのリソースを分割します。

3. 必要な場合は、`ldm cancel-reconf` コマンドを使用して手順 2 の操作を元に戻し、やり直します。

4. 制御ドメインをリブートして、再構成の変更を有効にします。

### 動的再構成と遅延再構成

制御ドメインで遅延再構成が保留されている場合、他のドメインについてのメモリー再構成要求はすべて拒否されます。制御ドメインで遅延再構成が保留中されていない場合、メモリー DR をサポートしないドメインについてのメモリー再構成要求はすべて拒否されます。メモリー DR をサポートしない制御ドメインでのメモリー再構成要求は、遅延再構成要求に変換されます。

### メモリー配置

メモリー再構成のリクエストは、そのリクエストが適用されるドメインの状態に応じて、配置の要件が異なります。

#### アクティブなドメインのメモリー配置

- 動的追加および削除。動的追加と動的削除では、メモリーブロックのアドレスとサイズが 256 MB 単位になります。操作の最小サイズは 256M バイトです。

  この単位に基づかない要求や、境界サイズよりも大きい削除要求は拒否されます。

  メモリー配置を調整するには、次のコマンドを使用します。

  - `ldm add-memory`。このコマンドで `--auto-adj` オプションを指定した場合、追加されるメモリーの量は 256 MB 単位であるため、ドメインに実際に追加されるメモリーの量が増えることがあります。

  - `ldm remove-memory`。このコマンドで `--auto-adj` オプションを指定した場合、削除されるメモリーの量は 256 MB 単位であるため、ドメインから実際に削除されるメモリーの量が減ることがあります。

  - `ldm set-memory`。このコマンドは、追加または削除操作として扱われます。`--auto-adj` オプションを指定すると、前に説明したように、追加または削除されるメモリーの量は 256M バイト単位になります。この調整により、ドメインのメモリーサイズが増加する可能性があります。

- 遅延再構成。メモリーブロックのアドレスとサイズは 4M バイト単位です。この単位に基づかない要求を行なった場合、要求は 4M バイト単位に切り上げられます。

#### バインドされているドメインのメモリー配置

バインドされているドメインの、メモリーブロックのアドレスとサイズは 4M バイト単位です。この単位に基づかない要求を行なった場合、要求は 4M バイト単位に切り上げられます。つまり、操作の結果、ドメインのメモリーサイズが指定よりも大きくなることがあります。

`ldm add-memory`、`ldm set-memory`、および `ldm remove-memory` コマンドに `--auto-adj` オプションを使用すると、結果のメモリーサイズが 256M バイト単位に切り上げられます。つまり、操作の結果、メモリーサイズが指定よりも大きくなることがあります。

#### アクティブでないドメインのメモリー配置

`ldm add-memory`、`ldm set-memory`、および `ldm remove-memory` コマンドに `--auto-adj` オプションを使用すると、結果のメモリーサイズが 256M バイト単位に切り上げられます。アクティブでないドメインについては、単位の要件はありません。「バインドされているドメインのメモリー配置」に記載されている制限は、このようなドメインがバインドされたあとで有効になります。

#### 単位が調整されていないメモリーの追加

メモリー DR 機能では、アクティブなドメインに動的に追加または削除されるメモリーのアドレスとサイズが 256M バイト単位であることが要求されます。このため、この単位に調整されていないメモリーを、メモリー DR を使用してアクティブドメインから削除することはできません。

また、空きメモリープールに存在するメモリーがこの単位に調整されていない場合、それらをメモリー DR を使用してアクティブなドメインに追加することはできません。

単位が調整されたすべてのメモリーが割り当てられたあとで、`ldm add-memory` コマンドを使用して、単位が調整されていない残りのメモリーをバインドされたドメインまたはアクティブでないドメインに追加できます。また、このコマンドを使用して、遅延再構成操作を行い、単位が調整されていない残りのメモリーを制御ドメインに追加できます。

次の例は、残り 2 つの 128M バイトのメモリーブロックを `primary` および `ldom1` ドメインに追加する方法を示しています。`ldom1` ドメインはバインドされた状態です。次のコマンドは、残りの 2 つのメモリーブロックを追加します。最初のコマンドは、制御ドメインで遅延再構成操作を開始します。2 番目のコマンドは、128M バイトのメモリーブロックの 1 つを制御ドメインに追加します。5 番目のコマンドは、もう 1 つの 128M バイトのメモリーブロックを `ldom1` ドメインに追加します。

    # ldm start-reconf primary
    Initiating a delayed reconfiguration operation on the primary domain.
    All configuration changes for other domains are disabled until the
    primary domain reboots, at which time the new configuration for the
    primary domain also takes effect.

    # ldm add-memory 128M primary
    ------------------------------------------------------------------------------
    Notice: The primary domain is in the process of a delayed reconfiguration.
    Any changes made to the primary domain will only take effect after it reboots.
    ------------------------------------------------------------------------------

    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -ndcv-  SP      8     2688M    0.1%  23d 8h 8m

    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      8     2560M    0.5%  23d 8h 9m
    ldom1            bound      ------  5000    1     524M

    # ldm add-mem 128M ldom1
    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      8     2560M    0.1%  23d 8h 9m
    ldom1            bound      ------  5000    1     652M

### メモリー DR の例

次の例は、メモリー DR 操作を実行する方法を示しています。関連する CLI コマンドについては、`ldm`(1M) のマニュアルページを参照してください。

例 10-9 アクティブなドメインでのメモリー DR 操作

この例は、アクティブなドメイン `ldom1` に対し、動的にメモリーの追加と削除を行う方法を示しています。

`ldm list` の出力の「Memory (メモリー)」フィールドに、各ドメインのメモリーが表示されます。最初の `ldm add-mem` コマンドに指定するメモリーは 256M バイトの倍数である必要があるため、このコマンドはエラーで終了します。次の `ldm add-mem` コマンドは `--auto-adj` オプションを使用しているため、追加するメモリーの量として `200M` を指定していますが、メモリーの量は 256M バイトに切り上げられます。

`ldm rm-mem` コマンドに指定するメモリーは 256M バイトの倍数である必要があるため、このコマンドはエラーで終了します。同じコマンドに `--auto-adj` オプションを追加すると、メモリーの量が次の 256M バイトの境界まで切り下げられるため、メモリーの削除は成功します。

    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      4     27392M   0.4%  1d 22h 53m
    ldom1            active     -n----  5000    2     2G       0.4%  1d 1h 23m
    ldom2            bound      ------  5001    2     200M

    # ldm add-mem 200M ldom1
    The size of memory must be a multiple of 256MB.

    # ldm add-mem --auto-adj 200M ldom1
    Adjusting request size to 256M.
    The ldom1 domain has been allocated 56M more memory
    than requested because of memory alignment constraints.

    # ldm list
    NAME            STATE   FLAGS   CONS    VCPU    MEMORY  UTIL    UPTIME
    primary         active  -n-cv-  SP      4       27392M  5.0%    8m
    ldom1           active  -n----  5000    2       2304M   0.5%    1m
    ldom2           bound   ------  5001    2       200M

    # ldm rm-mem --auto-adj 300M ldom1
    Adjusting requested size to 256M.
    The ldom1 domain has been allocated 44M more memory
    than requested because of memory alignment constraints.

    # ldm list
    NAME            STATE   FLAGS   CONS    VCPU    MEMORY  UTIL    UPTIME
    primary         active  -n-cv-  SP      4       27392M  0.3%    8m
    ldom1           active  -n----  5000    2       2G      0.2%    2m
    ldom2           bound   ------  5001    2       200M

例 10-10 バインドされたドメインでのメモリー DR 操作

この例は、バインドされたドメイン `ldom2` に対してメモリーの追加と削除を行う方法を示しています。

`ldm list` の出力の「Memory (メモリー)」フィールドに、各ドメインのメモリーが表示されます。最初の `ldm add-mem` コマンドは、`ldom2` ドメインに 100M バイトのメモリーを追加します。次の `ldm add-mem` コマンドには `--auto-adj` オプションが指定されているため、さらに 112M バイトのメモリーが `ldom2` に動的に追加されます。

`ldm rm-mem` コマンドは、`ldom2` ドメインから 100M バイトを動的に削除します。同じコマンドに `--auto-adj` オプションを指定して 300M バイトのメモリーを削除すると、メモリーの量は次の 256 M バイトの境界まで切り下げられます。

    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      4     27392M   0.4%  1d 22h 53m
    ldom1            active     -n----  5000    2     2G       0.4%  1d 1h 23m
    ldom2            bound      ------  5001    2     200M

    # ldm add-mem 100M ldom2

    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      4     27392M   0.5%  1d 22h 54m
    ldom1            active     -n----  5000    2     2G       0.2%  1d 1h 25m
    ldom2            bound      ------  5001    2     300M

    # ldm add-mem --auto-adj 100M ldom2
    Adjusting request size to 256M.
    The ldom2 domain has been allocated 112M more memory
    than requested because of memory alignment constraints.

    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      4     27392M   0.4%  1d 22h 55m
    ldom1            active     -n----  5000    2     2G       0.5%  1d 1h 25m
    ldom2            bound      ------  5001    2     512M

    # ldm rm-mem 100M ldom2
    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      4     27392M   3.3%  1d 22h 55m
    ldom1            active     -n----  5000    2     2G       0.2%  1d 1h 25m
    ldom2            bound      ------  5001    2     412M

    # ldm rm-mem --auto-adj 300M ldom2
    Adjusting request size to 256M.
    The ldom2 domain has been allocated 144M more memory
    than requested because of memory alignment constraints.

    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      4     27392M   0.5%  1d 22h 55m
    ldom1            active     -n----  5000    2     2G       0.2%  1d 1h 26m
    ldom2            bound      ------  5001    2     256M

例 10-11 ドメインのメモリーサイズの設定

この例は、`ldm set-memory` コマンドを使用してドメインに対するメモリーの追加と削除を行う方法を示しています。

`ldm list` の出力の「Memory (メモリー)」フィールドに、各ドメインのメモリーが表示されます。最初の `ldm set-mem` コマンドは、`primary` ドメインのサイズを 3400M バイトに設定する操作を試みます。その結果として発生するエラーは、指定された値が 256M バイト単位でないことを示します。同じコマンドに `--auto-adj` オプションを追加すると、メモリーの一部を正常に削除し、256M バイトの境界を維持することができます。このコマンドは、ドメインがメモリーを使用しているため、要求されたメモリーのすべてを削除できなかったことを示す警告も発行します。

次の `ldm set-mem` コマンドは、バインドされた状態にある `ldom2` ドメインのメモリーサイズを 690M バイトに設定します。同じコマンドに `--auto-adj` オプションを追加すると、`ldom2` にさらに 78M バイトのメモリーが動的に追加され、256M バイトの境界が維持されます。

    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      4     27392M   0.5%  1d 22h 55m
    ldom1            active     -n----  5000    2     2G       0.2%  1d 1h 26m
    ldom2            bound      ------  5001    2     256M

    # ldm set-mem 3400M primary
    An ldm set-mem 3400M command would remove 23992MB, which is not a multiple
    of 256MB. Instead, run ldm rm-mem 23808MB to ensure a 256MB alignment.

    # ldm set-mem --auto-adj 3400M primary
    Adjusting request size to 3.4G.
    The primary domain has been allocated 184M more memory
    than requested because of memory alignment constraints.
    Only 9472M of memory could be removed from the primary domain
    because the rest of the memory is in use.

    # ldm set-mem 690M ldom2
    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      4     17920M   0.5%  1d 22h 56m
    ldom1            active     -n----  5000    2     2G       0.6%  1d 1h 27m
    ldom2            bound      ------  5001    2     690M

    # ldm set-mem --auto-adj 690M ldom2
    Adjusting request size to 256M.
    The ldom2 domain has been allocated 78M more memory
    than requested because of memory alignment constraints.

    # ldm list
    NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  UPTIME
    primary          active     -n-cv-  SP      4     17920M   2.1%  1d 22h 57m
    ldom1            active     -n----  5000    2     2G       0.2%  1d 1h 27m
    ldom2            bound      ------  5001    2     768M

Copyright © 2007, 2013, Oracle and/or its affiliates. All rights reserved. 著作権について |