ページの先頭行へ戻る
PRIMECLUSTER Global Disk Services 説明書 4.5
FUJITSU Software

7.1.1 ZFS ブート環境のシステムディスクミラーリングの設定 (GDS ミラー方式)

ここでは、ZFS ブート環境において、以下の構成で GDS ミラー方式のシステムディスクミラーリングを設定する方法を説明します。

本構成は、システムディスクにZFSルートプール用のスライスとデータ用のスライスが存在し、システムディスクとは別にダンプ用のディスクが存在する場合の例です。

システムディスクにデータ用のスライスが存在しない場合、またはダンプ用のディスクが存在しない場合でも、この方法で設定できます。

図7.1 設定前の構成


図7.2 設定後の構成

GDS : Global Disk Services

以降の手順では、物理スライス名、ボリューム名、プール名などを、実際のシステムで使用する名前に置き換えてください。

7.1.1.1 システムディスクミラーリングの設定の流れ (ZFS ブート環境 : GDS ミラー方式)

GDS ミラー方式のシステムディスクミラーリングの設定は、以下の手順で行います。

図7.3 設定手順の概要

GDS : Global Disk Services

上図 [5] の手順 9) でシステムの再起動が必要ですが、それ以外の設定は、業務やアプリケーションプログラムを動作させたまま実行できます。

上図 [2]の手順 6) で ZFS による再同期化処理、上図 [6] の手順 12) で GDS による等価性コピー処理が実行されます。このときも、業務やアプリケーションプログラムを停止する必要はありません。

ただし、より安全性が求められる場合は、業務やアプリケーションプログラムを停止し、システムのバックアップを採取してから設定を行ってください。

所要時間は、サーバやディスクの性能、スライスやファイルシステムのサイズなどに左右され、システムによって異なります。

7.1.1.2 システムディスクミラーリングの設定手順 (ZFS ブート環境 : GDS ミラー方式)

ここでは、「7.1.1 ZFS ブート環境のシステムディスクミラーリングの設定 (GDS ミラー方式)」の図のように、システムディスクにZFSルートプール用のスライスとデータ用のスライスが存在し、システムディスクとは別にダンプ用のディスクが存在する場合の設定方法を説明します。

システムディスクにデータ用のスライスが存在しない場合、またはダンプ用のディスクが存在しない場合は、存在しないディスクやスライスに対する設定は必要ありません。

1) GDS のチューニングパラメタを設定します。

SAN ブート環境でシステムディスクが12Gbps SAS カードに接続されている場合にのみ、本設定を行います。

1-1) チューニングパラメタを設定します。

/etc/opt/FJSVsdx/sdx.cfファイルに“SDX_BOOT_PROPERTY=off”を追記します。

# vi /etc/opt/FJSVsdx/sdx.cf

SDX_BOOT_PROPERTY=off

1-2) チューニングパラメタが設定されていることを確認します。

# grep SDX_BOOT_PROPERTY /etc/opt/FJSVsdx/sdx.cf
SDX_BOOT_PROPERTY=off

2) ミラー先ディスクにスライスを作成します。

OS の format(1M) コマンド等を使用し、ミラー先ディスクのスライス構成をシステムディスクと同じ構成にします。

スライス構成を紙またはファイルなどに記録しておいてください。システムディスクのミラーリングを解除する際に、必要になります。


3) SAN ブート環境の場合、ブートデバイスのパス名を確認します。

OS がインストールされているスライス (ZFS ルートプールを構成するスライス) のデバイスパス名と、手順 2) で作成したスライスのデバイスパス名を確認します。

確認したデバイスパス名は、紙またはファイルなどに記録しておいてください。システム起動時やシステムディスクのミラーリングを解除する際に必要になります。

参照

確認方法の詳細は、以下のドキュメントを参照してください。

  • MPxIO を使用する場合

    SPARC Enterprise SAN Boot環境構築ガイド (Leadvilleドライバ編)

    https://updatesite.jp.fujitsu.com/unix/jp/download/driver/pfca-8info/

  • ETERNUS マルチパスドライバを使用する場合

    SPARC Enterprise SAN Boot環境構築ガイド

    https://updatesite.jp.fujitsu.com/unix/jp/download/driver/pfca-4/


4) ミラー先ディスクをルートクラスに登録します。

4-1) システムディスクのミラー先ディスクをルートクラスに登録します。

# sdxdisk -M -c System -a type=root -d c1t0d0=Root2:keep
                (*1)                   (*2)   (*3)

(*1) ルートクラス名

(*2) システムディスクのミラー先ディスク

(*3) システムディスクのミラー先ディスクの SDX ディスク名

4-2) ダンプ用ディスクのミラー先ディスクをルートクラスに登録します。

# sdxdisk -M -c System -a type=root -d c1t0d1=Root4:keep
                (*1)                   (*2)   (*3)

(*1) ルートクラス名

(*2) ダンプ用ディスクのミラー先ディスク

(*3) ダンプ用ディスクのミラー先ディスクの SDX ディスク名


5) ミラー先ディスクをグループに接続します。

5-1) システムディスクのミラー先ディスクをグループに接続します。

# sdxdisk -C -c System -g Group1 -d Root2 -v 0=rpool:on,1=datapool:on
                (*1)      (*2)      (*3)     (*4)       (*5)

(*1) ルートクラス名

(*2) システムディスクのグループのグループ名

(*3) システムディスクのミラー先ディスクの SDX ディスク名

(*4) 手順2)で作成した、ZFSルートプール用のスライスのミラー先にするスライス(この例ではc1t0d0s0)に対する設定を、num=volume:jrmの形式で指定する。numにはスライス番号、volumeにはボリューム名、jrmにはJRMモード(通常はon)を指定する。

(*5) 手順2)で作成した、システムディスク上のデータ用スライスのミラー先にするスライス(この例ではc1t0d0s1)に対する設定を、num=volume:jrmの形式で指定する。numにはスライス番号、volumeにはボリューム名、jrmにはJRMモード(通常はon)を指定する。

5-2) ダンプ用ディスクのミラー先ディスクをグループに接続します。

# sdxdisk -C -c System -g Group2 -d Root4 -v 0=dumppool:on
                (*1)      (*2)      (*3)     (*4)

(*1) ルートクラス名

(*2) ダンプ用ディスクのグループのグループ名

(*3) ダンプ用ディスクのミラー先ディスクの SDX ディスク名

(*4) 手順2)で作成した、ダンプ用ディスクのスライスのミラー先にするスライス(この例ではc1t0d1s0)に対する設定を、num=volume:jrmの形式で指定する。numにはスライス番号、volumeにはボリューム名、jrmにはJRMモード(通常はon)を指定する。


6) ミラー先ディスク上のボリュームを ZFS ルートプールおよびZFSストレージプールに接続します。

zpool attach コマンド実行後、ZFS の再同期処理が実行されます。このとき、コンソールに OS のメッセージ (SUNW-MSG-ID: ZFS-8000-QJ) が出力されることがありますが、システムには影響ありません。

6-1) ZFSルートプールにボリュームを接続します。

# zpool attach rpool c0t0d0s0 /dev/sfdsk/System/dsk/rpool
               (*1)  (*2)                (*3)       (*4)

(*1) ZFS ルートプール名 (zpool status コマンドで確認可能 )

(*2) OS がインストールされているスライス (ZFS ルートプールを構成するスライス )

(*3) ルートクラス名

(*4) 手順 5-1) で作成された、ZFSルートプール用のボリュームのボリューム名

6-2) データ用のZFSストレージプールにボリュームを接続します。

# zpool attach datapool c0t0d0s1 /dev/sfdsk/System/dsk/datapool
               (*1)     (*2)                (*3)       (*4)

(*1) データ用のZFS ストレージプールのプール名 (zpool status コマンドで確認可能 )

(*2) システムディスク上のデータ用スライス (ZFS ストレージプールを構成するスライス )

(*3) ルートクラス名

(*4) 手順 5-1) で作成された、データ用のボリュームのボリューム名

6-3) ダンプ用のZFSストレージプールにボリュームを接続します。

# zpool attach dumppool c0t0d1s0 /dev/sfdsk/System/dsk/dumppool
               (*1)     (*2)                (*3)       (*4)

(*1) ダンプ用のZFS ストレージプールのプール名 (zpool status コマンドで確認可能 )

(*2) ダンプ用ディスクのスライス

(*3) ルートクラス名

(*4) 手順 5-2) で作成された、ダンプ用のボリュームのボリューム名


7) ZFS ルートプールおよびZFSストレージプールの状態を確認します。

以下では、ZFSルートプールの状態を確認する方法を説明します。

同様の方法で、ZFSストレージプールの状態も確認してください。

# zpool status rpool
               (*1) ZFS ルートプール名
  pool: rpool
 state: ONLINE
  scan: resilvered ~
config:
        NAME                             STATE     READ WRITE CKSUM
        rpool                            ONLINE       0     0     0
          mirror                         ONLINE       0     0     0
            c0t0d0s0                     ONLINE       0     0     0
            (*2)
            /dev/sfdsk/System/dsk/rpool  ONLINE       0     0     0
            (*3)

以下のように表示されることを確認します。

8) ミラー先ディスク上のボリュームにブートブロックをインストールします。

以下の環境の場合、この手順は実行しないでください。

(*1) ルートクラス名

(*2) 手順 6-1) でZFSルートプールに接続したボリュームのボリューム名


9) システムを再起動します。

ブートディスクからリブートする手順は、以下の2つの場合で異なります。

[SANブート環境でシステムディスクが12Gbps SASカードに接続されている場合]

9a-1) ZFSルートプール用のボリュームを構成するスライスのパーティションを確認します。

# ls -l /dev/dsk | grep c0t600000E00D0000000001060300040000d0s0
                        (*1)
lrwxrwxrwx 1 root root 64 Feb  2 13:57 c0t600000E00D0000000001060300040000d0s0 ->
../../devices/scsi_vhci/disk@g600000e00d28000000280cc600000000:a
                                                               (*2)

(*1) ZFSルートプール用のボリュームを構成するスライス ( 手順 2) で作成したスライス )

(*2) スライスのパーティション


9a-2) ブートディスクの情報を確認します。

# prtconf -v /dev/rdsk/c0t600000E00D0000000001060300040000d0s0
disk, instance #0
    Driver properties:
        ~
    Hardware properties:
        ~
    Paths from multipath bus adapters:
        Path 33: /pci@8100/pci@4/pci@0/pci@0/LSI,sas@0/iport@f0/disk@w500000e0d0460306,0
        lsc#3(online)                                           (*1)  (*2)

(*1) diskノード名 ( この例では disk@w500000e0d0460306,0 )
(*2) SAS Address ( この例では 500000e0d0460306 )


9a-3) OpenBoot 環境に移行します。

# shutdown -y -g0 -i0

9a-4) ディスクが接続されているSAS HBAのデバイスパスを確認します。

ok probe-scsi-all
/pci@8100/pci@4/pci@0/pci@0/LSI,sas@0 (*1)
FCode Version 1.00.65, MPT Version 2.05, Firmware Version 4.00.00.00 Target a Unit 0 Disk TOSHIBA MBF2300RC 3706 585937500 Blocks, 300 GB SASDeviceName 50000393d82956d4 SASAddress 500000e0d0460306 PhyNum 0 (*2) Target b Unit 0 Disk TOSHIBA MBF2300RC 3706 585937500 Blocks, 300 GB SASDeviceName 50000393d828bbfc SASAddress 500000e0da0cc620 PhyNum b ~ ok

(*1) デバイスパス

(*2) SAS Address ( 手順9a-2) の*2で確認したSAS Address)


9a-5) OpenBoot 環境でシステムを起動します。

ok boot /pci@8100/pci@4/pci@0/pci@0/LSI,sas@0/disk@w500000e0d0460306,0:a
        (*4)

(*4) 手順 9a-4) の デバイスパス(*1) と、手順 9a-2) のdiskノード名(*1)と、手順9a-1)のスライスのパーティション (*2) を連結したデバイス名


[その他の場合 ]

9b-1) システムを再起動します。

# shutdown -y -g0 -i6

10) 元のシステムディスクおよび元のダンプ用ディスクを ZFS ルートプールおよびZFSストレージプールから切り離します。

10-1) ZFSルートプールからスライスを切り離します。

# zpool detach rpool c0t0d0s0
               (*1)  (*2)

(*1) ZFS ルートプール名 (zpool status コマンドで確認可能 )

(*2) OS をインストールしたスライス

10-2) データ用のZFSストレージプールからスライスを切り離します。

# zpool detach datapool c0t0d0s1
               (*1)     (*2)

(*1) データ用のZFS ストレージプールのプール名 (zpool status コマンドで確認可能 )

(*2) 元のシステムディスク上のデータ用のスライス

10-3) ダンプ用のZFSストレージプールからスライスを切り離します。

# zpool detach dumppool c0t0d1s0
               (*1)     (*2)

(*1) ダンプ用のZFS ストレージプールのプール名 (zpool status コマンドで確認可能 )

(*2) 元のダンプ用ディスクのスライス


11) 元のシステムディスクおよび元のダンプ用ディスクをルートクラスに登録します。

11-1) 元のシステムディスクをルートクラスに登録します。

# sdxdisk -M -c System -d c0t0d0=Root1
                (*1)      (*2)   (*3)

(*1) ルートクラス名

(*2) 元のシステムディスク

(*3) 元のシステムディスクの SDX ディスク名

11-2) 元のダンプ用ディスクをルートクラスに登録します。

# sdxdisk -M -c System -d c0t0d1=Root3
                (*1)      (*2)   (*3)

(*1) ルートクラス名

(*2) 元のダンプ用ディスク

(*3) 元のダンプ用ディスクの SDX ディスク名


12) 元のシステムディスクおよび元のダンプ用ディスクを手順 5) で作成したグループに接続します。

12-1) 元のシステムディスクをグループに接続します。

# sdxdisk -C -c System -g Group1 -d Root1
                (*1)      (*2)      (*3)

(*1) ルートクラス名

(*2) 手順 5-1) で作成した、システムディスクのグループのグループ名

(*3) 元のシステムディスクの SDX ディスク名

12-2) 元のダンプ用ディスクをグループに接続します。

# sdxdisk -C -c System -g Group2 -d Root3
                (*1)      (*2)      (*3)

(*1) ルートクラス名

(*2) 手順 5-2) で作成した、ダンプ用ディスクのグループのグループ名

(*3) 元のダンプ用ディスクの SDX ディスク名


13) 正常にミラーリングされていることを確認します。

以下では、ZFSルートプールの状態を確認する方法を説明します。

同様の方法で、ZFSストレージプールの状態も確認してください。

# zpool status rpool
               (*1) ZFS ルートプール名
  pool: rpool
 state: ONLINE
  scan: resilvered ~
config:
        NAME                           STATE     READ WRITE CKSUM
        rpool                          ONLINE       0     0     0
          /dev/sfdsk/System/dsk/rpool  ONLINE       0     0     0
          (*2)

以下のように表示されることを確認します。

以下のように表示されることを確認します。

14) ミラー先のディスクをOBPの環境変数(boot-deviceおよびmultipath-boot?)に設定します。

SANブート環境でシステムディスクが12Gbps SASカードに接続されている場合にのみ、本設定を行います。

14-1) ミラー元のディスクのOBPのboot-deviceプロパティを確認します。

# eeprom boot-device
boot-device=/pci@8100/pci@4/pci@0/pci@0/LSI,sas@0/disk@w500000e0d0460300,0:a (*1)

(*1) ミラー元ディスクのbootデバイス

14-2) ミラー先のディスクのbootデバイスをOBPのboot-deviceプロパティに設定します。

# eeprom boot-device="/pci@8100/pci@4/pci@0/pci@0/LSI,sas@0/disk@w500000e0d0460300,0:a
(*1)
/pci@8100/pci@4/pci@0/pci@0/LSI,sas@0/disk@w500000e0d0460306,0:a"
(*2)

(*1) 手順14-1) で確認したbootデバイス

(*2) 手順9a) で確認したbootデバイス

14-3) OBPのmultipath-boot?プロパティを確認します。

# eeprom multipath-boot?
multipath-boot?=false

14-4) OBPのmultipath-boot?プロパティにtrueを設定します。

# eeprom multipath-boot?=true

14-5) OBPのmultipath-boot?プロパティにtrueが設定されていることを確認します。

# eeprom 

boot-device=/pci@8100/pci@4/pci@0/pci@0/LSI,sas@0/disk@w500000e0d0460300,0:a /pci@8100/pci@4/pci@0/pci@0/LSI,sas@0/disk@w500000e0d0460306,0:a

multipath-boot?=true