Sun Cluster のシステム管理 (Solaris OS 版)

ProcedureSolstice DiskSuite メタデバイスまたは Solaris Volume Manager 上に存在していたルート (/) ファイルシステムを復元する

この手順を使用して、バックアップ実行時に Solstice DiskSuite メタデバイスまたは Solaris Volume Manager 上に存在していたルート (/) ファイルシステムを復元します。この手順は、破損したルートディスクを新しいディスクに交換する場合などに実行します。復元するノードは起動しないでください。復元手順を実行する前に、クラスタが正常に動作していることを確認してください。


注 –

新しいディスクは、障害の発生したディスクと同じ形式でパーティション分割する必要があります。この手順を始める前に、パーティションの分割方式を確認し、ファイルシステムを適切に再作成しておいてください。


手順
  1. 復元するノード以外の、ディスクセットにアクセスできるクラスタノード上で、スーパーユーザーになるか、あるいは同等の役割になります。

  2. 復元するノードのホスト名をすべてのディスクセットから削除します。


    # metaset -s setname -f -d -h nodelist
    
    -s setname

    メタセット名を指定します。

    -f

    強制的に実行します。

    -d

    メタセットから削除します。

    -h nodelist

    メタセットから削除するノードの名前を指定します。

  3. ルート (/) ファイルシステムを復元するノードで、障害の発生したディスクを交換します。

    ディスク交換手順については、サーバーに付属のマニュアルを参照してください。

  4. 復元するノードを起動します。

    • Solaris CD-ROM を使用している場合は、次のコマンドを実行します。

      • SPARC:OpenBoot PROM の ok プロンプトで、次のコマンドを入力します。


        ok boot cdrom -s
        
      • x86: CD をシステムの CD ドライブに挿入し、システムを停止して、電源を切って入れなおすことにより、システムを起動します。「Current Boot Parameters」画面で次のコマンドを入力します。


                             <<< Current Boot Parameters >>>
        Boot path: /pci@0,0/pci8086,2545@3/pci8086,1460@1d/pci8086,341a@
        7,1/sd@0,0:a
        Boot args:
        
        Type b [file-name] [boot-flags] <ENTER> to boot with options
        or   i <ENTER>                          to enter boot interpreter
        or   <ENTER>                            to boot with defaults
        
                         <<< timeout in 5 seconds >>>
        Select (b)oot or (i)nterpreter: b -s
        
    • Solaris JumpStartTM サーバーを使用する場合は次のように操作します。

      • SPARC:OpenBoot PROM の ok プロンプトで、次のコマンドを入力します。


        ok boot net -s
        
      • x86: システムを停止し、電源を切って入れなおすことにより起動します。「Current Boot Parameters」画面で次のコマンドを入力します。


                             <<< Current Boot Parameters >>>
        Boot path: /pci@0,0/pci8086,2545@3/pci8086,1460@1d/pci8086,341a@
        7,1/sd@0,0:a
        Boot args:
        
        Type b [file-name] [boot-flags] <ENTER> to boot with options
        or   i <ENTER>                          to enter boot interpreter
        or   <ENTER>                            to boot with defaults
        
                         <<< timeout in 5 seconds >>>
        Select (b)oot or (i)nterpreter: b -s
        
  5. format コマンドを使用し、ルートディスクのすべてのパーティションとスワップを作成します。

    障害の発生したディスクに存在していた元のパーティションの分割方式を再作成します。

  6. newfs コマンドを使用し、必要に応じてルート (/) ファイルシステムやその他のファイルシステムを作成します。

    障害の発生したディスクに存在していた元のファイルシステムを再作成します。


    注 –

    /global/.devices/node@nodeid ファイルシステムが作成されていることを確認します。


  7. ルート (/) ファイルシステムを一時マウントポイントにマウントします。


    # mount device temp-mountpoint
    
  8. 次のコマンドを使用し、ルート (/) ファイルシステムを復元します。


    # cd temp-mountpoint
    # ufsrestore rvf dump-device
    # rm restoresymtable
    
  9. 新しい起動ブロックを新しいディスクにインストールします。


    # /usr/sbin/installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk 
    raw-disk-device
    
  10. /temp-mountpoint/etc/system ファイルの MDD ルート情報の行を削除します。


    * Begin MDD root info (do not edit)
    forceload: misc/md_trans
    forceload: misc/md_raid
    forceload: misc/md_mirror
    forceload: misc/md_hotspares
    forceload: misc/md_stripe
    forceload: drv/pcipsy
    forceload: drv/glm
    forceload: drv/sd
    rootdev:/pseudo/md@0:0,10,blk
    * End MDD root info (do not edit)
  11. /temp-mountpoint/etc/vfstab ファイルを編集して、ルートエントリを Solstice DiskSuite メタデバイスまたは Solaris Volume Manager ボリュームからメタデバイスまたはボリュームの一部であるルートディスク上の各ファイルシステムの対応する正常なスライスに変更します。


    Example: 
    Change from—
    /dev/md/dsk/d10   /dev/md/rdsk/d10    /      ufs   1     no       -
    
    Change to—
    /dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0  /      ufs   1     no       -
  12. 一時ファイルシステムをマウント解除し、raw ディスクデバイスを確認します。


    # cd /
    # umount temp-mountpoint
    # fsck raw-disk-device
    
  13. ノードをマルチユーザーモードで再起動します。


    # reboot
    
  14. scdidadm コマンドを使用し、ディスク ID を置換します。


    # scdidadm -R rootdisk
    
  15. metadb コマンドを使用し、状態データベースの複製を再作成します。


    # metadb -c copies -af raw-disk-device
    
    -c copies

    作成する複製の数を指定します。

    -af raw-disk-device

    指定した raw ディスクデバイスに初期状態のデータベースの複製を作成します。

  16. 復元したノード以外のクラスタノードから、metaset コマンドを使用し、復元したノードをすべてのディスクセットに追加します。


    phys-schost-2# metaset -s setname -a -h nodelist
    
    -a

    メタセットを追加 (作成) します。

    Solstice DiskSuite のマニュアルに従って、メタデバイスまたはボリューム/ミラーのルート ( /) を設定します。

    ノードがクラスタモードで再起動します。これでクラスタを使用できるようになります。


例 9–7 Solstice DiskSuite メタデバイスまたは Solaris Volume Manager 上に存在していたルート (/) ファイルシステムの復元

次に、テープデバイス /dev/rmt/0 からノード phys-schost-1 に復元したルート (/) ファイルシステムの例を示します。metaset コマンドは、クラスタの別のノード phys-schost-2 から実行し、ノード phys-schost-1 を削除し、後でメタセット schost-1 に追加します。そのコマンドはすべて phys-schost-1 から実行します。新しいブートブロックが /dev/rdsk/c0t0d0s0 に作成され、3 つの状態データベースの複製が /dev/rdsk/c0t0d0s4 に再作成されます。


[メタセットにアクセスできる、復元しようとするノード以外のクラスタノードで、スーパーユーザーになるか同等の役割
を引き受ける]
[ノードをメタセットから削除する:]
phys-schost-2# metaset -s schost-1 -f -d -h phys-schost-1
[障害のあるディスクを交換し、ノードを起動する:]

次の操作で、SolarisCD からノードを起動します。


[ format
  newfs を使用して、パーティションとファイルシステムを再作成する
.]
[一時マウントポイント上でルートファイルシステムをマウントする:]
# mount /dev/dsk/c0t0d0s0 /a
[ルートファイルシステムを復元する:]
# cd /a
# ufsrestore rvf /dev/rmt/0
# rm restoresymtable
[新しいブートブックをインストールする:]
# /usr/sbin/installboot /usr/platform/`uname \
-i`/lib/fs/ufs/bootblk /dev/rdsk/c0t0d0s0

[/
temp-mountpoint/etc/system ファイルで MDD ルート情報の行を削除する:
]
* Begin MDD root info (do not edit)
forceload: misc/md_trans
forceload: misc/md_raid
forceload: misc/md_mirror
forceload: misc/md_hotspares
forceload: misc/md_stripe
forceload: drv/pcipsy
forceload: drv/glm
forceload: drv/sd
rootdev:/pseudo/md@0:0,10,blk
* End MDD root info (do not edit)
[ /temp-mountpoint/etc/vfstab
 ファイルを編集する]
Example: 
Change from—
/dev/md/dsk/d10   /dev/md/rdsk/d10    /      ufs   1     no       -

Change to—
/dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0  /usr   ufs   1     no       -
[一時ファイルシステムのマウントを解除し、raw ディスクデバイスをチェックする:
]
# cd /
# umount /a
# fsck /dev/rdsk/c0t0d0s0
[再起動する:]
# reboot
[ディスク ID を置き換える:]
# scdidadm -R /dev/rdsk/c0t0d0
[状態データベース複製を再作成する:]
# metadb -c 3 -af /dev/rdsk/c0t0d0s4
[ノードを再びメタセットに追加する:]
phys-schost-2# metaset -s schost-1 -a -h phys-schost-1