Solaris 10 10/08 インストールガイド (Solaris Live Upgrade とアップグレードの計画)

同一の ZFS ルートプール内でのブート環境の作成

ここでは、既存の ZFS ルートプールがある場合に、新規 ZFS ブート環境をそのプール内に作成する手順について説明します。非アクティブなブート環境の作成後、新しいブート環境を都合のよいときにアップグレードおよびアクティブ化できます。同一プール内でブート環境を作成する場合、-p オプションは不要です。

ProcedureZFS ブート環境を同一の ZFS ルートプール内に作成する方法

  1. 初めて Solaris Live Upgrade を実行するときには、次の手順を実行します。


    注 –

    Solaris Live Upgrade を使って新規 ZFS ブート環境を作成するためには、少なくとも Solaris 10 10/08 リリースがインストールされている必要があります。それより前のリリースの ZFS および Solaris Live Upgrade ソフトウェアでは、この作業を実行することはできません。


    1. 必要に応じて、システム上の既存の Solaris Live Upgrade パッケージを削除します。新しいリリースにアップグレードする場合は、そのリリースのパッケージをインストールしてください。

      3 つの Solaris Live Upgrade パッケージ SUNWluuSUNWlur、および SUNWlucfg は、Solaris Live Upgrade を使ってアップグレードするのに必要なソフトウェアを構成します。これらのパッケージには、既存のソフトウェア、新しい機能、およびバグ修正が含まれています。Solaris Live Upgrade を使用する前に、既存パッケージを削除しないで新しいパッケージをシステムにインストールすると、ターゲットリリースへのアップグレードは失敗します。


      注 –

      SUMWlucfg パッケージは、Solaris 10 8/07 以降のリリースの新機能です。それより前のリリースから Solaris Live Upgrade パッケージを使用する場合は、このパッケージを削除する必要はありません。



      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    2. 新しい Solaris Live Upgrade パッケージをインストールします。詳細については、「Solaris Live Upgrade のインストール」を参照してください。

    3. Solaris Live Upgrade をインストールまたは実行する前に、次のパッチをインストールします。これらのパッチにより、リリースに最新のバグ修正と新機能がすべて含まれるようになります。

      SunSolve で最新のパッチリストを確認してください。SunSolve の Web サイトで、infodoc 206844 (以前の 72099) を検索してください。

      • スーパーユーザーになるか、同等の役割を引き受けます。

      • パッチをローカルディスクに保存する場合は、/var/tmp/lupatches のようなディレクトリを作成し、パッチをそのディレクトリにダウンロードします。

      • SunSolve の Web サイトから、パッチリストを取得します。

      • パッチのディレクトリに移動します。


        # cd /var/tmp/lupatches
        
      • patchadd コマンドを使用してパッチをインストールします。


        # patchadd patch_id
        

        patch_id はパッチの番号です。複数のパッチ名を指定する場合は、スペースで区切ります。


        注 –

        パッチは、info doc 206844 で指定されている順序で適用してください。


      • 必要に応じてシステムをリブートします。いくつかのパッチは、有効にするためにリブートする必要があります。

        x86 のみ: システムをリブートする必要があります。そうしないと、Solaris Live Upgrade は失敗します。


        # init 6
        
  2. 新しいブート環境を作成します。


    # lucreate [-c zfsBE] -n new-zfsBE
    
    -c zfsBE

    現在のブート環境に zfsBE という名前を割り当てます。このオプションは必須ではなく、また、最初のブート環境の作成時にのみ使用します。lucreate を初めて実行する場合に -c オプションを省略すると、デフォルトの名前が作成されます。

    -n new-zfsBE

    作成するブート環境に名前を割り当てます。名前は、システム上で一意となるように指定する必要があります。

    新しいブート環境の作成は、きわめて短時間で完了します。現在の ZFS ルートプール内の各データセットのスナップショットが作成され、各スナップショットからクローンが作成されます。スナップショットはディスク容量の効率が非常に高いので、この処理は最小限のディスク容量しか消費しません。非アクティブなブート環境が作成された場合は、luupgrade コマンドまたは luactivate コマンドを使用して、新しい ZFS ブート環境をアップグレードまたはアクティブ化することができます。

  3. (省略可能) ブート環境が完成したことを確認します。

    lustatus コマンドは、ブート環境の作成が完了してブート可能であるかどうかを報告します。


    # lustatus
    boot environment   Is        Active  Active     Can	    Copy 
    Name               Complete  Now	 OnReboot   Delete	 Status 
    ------------------------------------------------------------------------ 
    zfsBE               yes       yes     yes         no             -
    new-zfsBE           yes       no      no          yes            -
  4. (省略可能) システム上の基本データセット情報を確認します。

    この例では、ZFS ルートプールの名前は rpool で、@ 記号はスナップショットを示します。新しいブート環境のマウントポイントは、luactivate コマンドが実行されるまでの一時的なものです。/dump ボリュームと /swap ボリュームは、ZFS ルートプールおよびルートプール内のブート環境と共有されます。


    # zfs list
    NAME                                      USED  AVAIL  REFER  MOUNTPOINT 
    rpool                                    9.29G  57.6G    20K  /rpool 
    rpool/ROOT                               5.38G  57.6G    18K  /rpool/ROOT 
    rpool/ROOT/zfsBE                         5.38G  57.6G   551M  
    rpool/ROOT/zfsBE@new-zfsBE               66.5K      -   551M  -
    rpool/ROOT/new-zfsBE                     85.5K  57.6G   551M  /tmp/.alt.103197
    rpool/dump                               1.95G      -  1.95G  - 
    rpool/swap                               1.95G      -  1.95G  - 

    これで、新しいブート環境をアップグレードおよびアクティブ化できます。例 13–2 を参照してください。


例 13–2 同一の ZFS ルートプール内でのブート環境の作成

新規 ZFS ブート環境 new-zfsBE を作成するためのコマンドは、次のとおりです。このブート環境は同一のルートプール内に作成されるため、-p オプションは不要です。


# lucreate [-c zfsBE] -n new-zfsBE
Analyzing system configuration.
Comparing source boot environment <zfsBE> file systems with the file
system(s) you specified for the new boot environment. Determining which
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Creating configuration for boot environment new-zfsBE.
Source boot environment is zfsBE.
Creating boot environment new-zfsBE.
Cloning file systems from boot environment zfsBE to create 
boot environment new-zfsBE.
Creating snapshot for <rpool> on <rpool> Creating clone for <rpool>. 
Setting canmount=noauto for <rpool> in zone <global> on <rpool>. 
Population of boot environment zfsBE successful on <rpool>.
# lustatus
boot environment   Is        Active  Active     Can	    Copy 
Name               Complete  Now	   OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
zfsBE               yes       yes     yes         no          - 
new-zfsBE           yes       no      no          yes         -
# zfs list
NAME                                      USED  AVAIL  REFER  MOUNTPOINT 
rpool                                    9.29G  57.6G    20K  /rpool 
rpool/ROOT                               5.38G  57.6G    18K  /rpool/ROOT 
rpool/ROOT/zfsBE                         5.38G  57.6G   551M  
rpool/ROOT/zfsBE@new-zfsBE               66.5K      -   551M  - 
rpool/ROOT/new-zfsBE                     85.5K  57.6G   551M  /tmp/.alt.103197 
rpool/dump                               1.95G      -  1.95G  - 
rpool/swap                               1.95G      -  1.95G  - 

これで、新しいブート環境をアップグレードおよびアクティブ化できます。ZFS ブート環境のアップグレードの例については、例 13–1 を参照してください。luupgrade コマンドのその他の使用例については、第 5 章Solaris Live Upgrade によるアップグレード (作業)を参照してください。


# luactivate new-zfsBE
**********************************************************************

The target boot environment has been activated. It will be used when you 
reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You 
MUST USE either the init or the shutdown command when you reboot. If you 
do not use either init or shutdown, the system will not boot using the 
target BE.

**********************************************************************
In case of a failure while booting to the target BE, the following process 
needs to be followed to fallback to the currently working boot environment:

1. Enter the PROM monitor (ok prompt).

2. Change the boot device back to the original boot environment by typing:

     setenv boot-device /pci@1f,0/pci@1/scsi@4,1/disk@2,0:a

3. Boot to the original boot environment by typing:

     boot

**********************************************************************

Modifying boot archive service
Activation of boot environment <new-zfsBE> successful.

システムを ZFS ブート環境にリブートします。


# init 6
# svc.startd: The system is coming down.  Please wait.
svc.startd: 79 system services are now being stopped.
.
.
.