Logical Domains 1.2 管理ガイド

仮想ディスクと ZFS の使用

この節では、ゲストドメインにエクスポートされる仮想ディスクバックエンドを格納するために ZFS (Zettabyte File System) を使用する方法について説明します。ZFS は、仮想ディスクバックエンドを作成および管理するための便利で強力なソリューションです。ZFS では次のことを実行できます。

ZFS の使用法の詳細は、『Solaris ZFS 管理ガイド』 を参照してください。

次の説明および例で示す primary ドメインは、ディスクイメージが格納されるサービスドメインでもあります。

サービスドメインでの ZFS プールの構成

ディスクイメージを格納するには、まずサービスドメインに ZFS ストレージプールを作成します。たとえば、次のコマンドでは、primary ドメインにディスク c1t50d0 が格納された ZFS ストレージプール ldmpool が作成されます。


primary# zpool create ldmpool c1t50d0

ZFS を使用したディスクイメージの格納

次のコマンドは、ゲストドメイン ldg1 にディスクイメージを作成します。このゲストドメイン用に ZFS ファイルシステムを作成し、このゲストドメインのすべてのディスクイメージをそのファイルシステムに格納します。


primary# zfs create ldmpool/ldg1

ディスクイメージは、ZFS ボリュームまたは ZFS ファイルに格納できます。ZFS ボリュームは、サイズにかかわらず、zfs create -V コマンドを使用すると迅速に作成できます。一方、ZFS ファイルは、mkfile コマンドを使用して作成する必要があります。このコマンドの完了まで少し時間がかかることがあります。特に、作成するファイルが非常に大きいときに時間がかかり、多くはディスクイメージの作成時に該当します。

ZFS ボリュームと ZFS ファイルはいずれも、スナップショットや複製など、ZFS 機能の利点を利用できますが、ZFS ボリュームは疑似デバイス、ZFS ファイルは通常のファイルです。

ディスクイメージを、Solaris OS のインストール先の仮想ディスクとして使用する場合は、次のものを収容できる容量を確保してください。

したがって、Solaris OS 全体をインストールするためのディスクイメージのサイズは、8G バイト以上になります。

ZFS によるディスクイメージの格納例

    次の手順を実行します。

  1. ZFS ボリュームまたは ZFS ファイルに 10G バイトのイメージを作成します。

  2. ZFS ボリュームまたは ZFS ファイルを仮想ディスクとしてエクスポートします。ZFS ボリュームまたは ZFS ファイルをエクスポートする構文は同じですが、バックエンドへのパスは異なります。

  3. エクスポートされた ZFS ボリュームまたは ZFS ファイルをゲストドメインに割り当てます。

ゲストドメインが起動すると、ZFS ボリュームまたは ZFS ファイルは、Solaris OS のインストールが可能な仮想ディスクとして表示されます。

ProcedureZFS ボリュームを使用してディスクイメージを作成する

  1. たとえば、ZFS ボリュームに 10G バイトのディスクイメージを作成します。


    primary# zfs create -V 10gb ldmpool/ldg1/disk0
    

ProcedureZFS ファイルを使用してディスクイメージを作成する

  1. たとえば、ZFS ボリュームに 10G バイトのディスクイメージを作成します。


    primary# zfs create ldmpool/ldg1/disk0
    primary# mkfile 10g /ldmpool/ldg1/disk0/file
    

ProcedureZFS ボリュームをエクスポートする

  1. ZFS ボリュームを仮想ディスクとしてエクスポートします。


    primary# ldm add-vdsdev /dev/zvol/dsk/ldmpool/ldg1/disk0 ldg1_disk0@primary-vds0
    

ProcedureZFS ファイルをエクスポートする

  1. ZFS ファイルを仮想ディスクとしてエクスポートします。


    primary# ldm add-vdsdev /ldmpool/ldg1/disk0/file ldg1_disk0@primary-vds0
    

ProcedureZFS ボリュームまたは ZFS ファイルをゲストドメインに割り当てる

  1. ZFS ボリュームまたは ZFS ファイルをゲストドメイン (次の例では ldg1) に割り当てます。


    primary# ldm add-vdisk disk0 ldg1_disk0@primary-vds0 ldg1
    

ディスクイメージのスナップショットの作成

ディスクイメージが ZFS ボリュームまたは ZFS ファイルに格納されている場合は、ZFS スナップショットコマンドを使用して、このディスクイメージのスナップショットを作成できます。

ディスクイメージに現在格納されているデータの一貫性を確保するため、ディスクイメージのスナップショットを作成する前に、ゲストドメインでそのディスクが現在使用されていないことを確認してください。ゲストドメインで確実にディスクが使用中ではない状態にするには、いくつかの方法があります。次のいずれかの手順を実行します。

この例では、ZFS レイアウトのため、ディスクイメージの格納場所が ZFS ボリュームまたは ZFS ファイルのどちらであっても、ディスクイメージのスナップショットを作成するコマンドは同じです。

Procedureディスクイメージのスナップショットを作成する

  1. たとえば、ldg1 ドメインに作成されたディスクイメージのスナップショットを作成します。


    primary# zfs snapshot ldmpool/ldg1/disk0@version_1
    

複製を使用して新規ドメインをプロビジョニングする

ディスクイメージのスナップショットを作成したら、ZFS 複製コマンドを使用してこのディスクイメージを複製できます。そのあと、複製されたイメージを別のドメインに割り当てることができます。起動ディスクイメージを複製することによって、新規ゲストドメイン用の起動ディスクが迅速に作成され、Solaris OS インストールプロセス全体を実行する必要はなくなります。

たとえば、作成された disk0 がドメイン ldg1 の起動ディスクである場合、次の手順を実行してこのディスクを複製し、ドメイン ldg2 の起動ディスクを作成します。


primary# zfs create ldmpool/ldg2
primary# zfs clone ldmpool/ldg1/disk0@version_1 ldmpool/ldg2/disk0

ldompool/ldg2/disk0 は、仮想ディスクとしてエクスポートして、新規の ldg2 ドメインに割り当てることができます。ドメイン ldg2 は、OS のインストールプロセスを実行しなくても、この仮想ディスクから直接起動することができます。

起動ディスクイメージの複製

起動ディスクを複製した場合、新しいイメージは元の起動ディスクと全く同一であり、イメージの複製前に起動ディスクに格納されていたホスト名、IP アドレス、マウントされているファイルシステムテーブル、システム構成、チューニングなどの情報が含まれています。

マウントされているファイルシステムテーブルは、元の起動ディスクイメージ上と複製されたディスクイメージ上で同じであるため、複製されたディスクイメージは、元のドメインの場合と同じ順序で新規ドメインに割り当てる必要があります。たとえば、起動ディスクイメージが元のドメインの 1 番めのディスクとして割り当てられていた場合は、複製されたディスクイメージを新規ドメインの 1 番めのディスクとして割り当てる必要があります。このようにしない場合、新規ドメインは起動できなくなります。

元のドメインが静的 IP アドレスで構成されていた場合、複製されたイメージを使用する新規ドメインは、同じ IP アドレスで始まります。この場合は、sys-unconfig(1M) コマンドを使用すると、新規ドメインのネットワーク構成を変更できます。この問題を回避するために、未構成のシステムのディスクイメージのスナップショットを作成することもできます。

元のドメインが動的ホスト構成プロトコル (DHCP) で構成されていた場合は、複製されたイメージを使用する新規ドメインも、DHCP を使用します。この場合、新規ドメインの起動時に、IP アドレスとそのネットワーク構成を自動的に受け取るため、新規ドメインのネットワーク構成を変更する必要はありません。


注 –

ドメインのホスト ID は起動ディスクには格納されませんが、ドメインの作成時に Logical Domains Manager によって割り当てられます。このため、ディスクイメージを複製した場合、その新規ドメインは元のドメインのホスト ID を保持しません。


Procedure未構成システムのディスクイメージのスナップショットを作成する

  1. 元のドメインをバインドし、起動します。

  2. sys-unconfig コマンドを実行します。

  3. sys-unconfig コマンドが完了すると、このドメインは停止します。

  4. ドメインを停止し、バインドを解除します。ドメインを再起動しないでください

  5. ドメインの起動ディスクイメージのスナップショットを作成します。

    次に例を示します。


    primary# zfs snapshot ldmpool/ldg1/disk0@unconfigured
    

    この時点でのスナップショットは、未構成システムの起動ディスクイメージです。

  6. このイメージを複製して新規ドメインを作成します。このドメインの最初の起動時に、システムを構成するように求められます。