• 検索結果がありません。

ETERNUSマルチパスドライバの設定

4.2 ブートディスクへのパスを冗長化

4.2.2 マルチパスドライバの設定

4.2.2.2 ETERNUSマルチパスドライバの設定

ETERNUSマルチパスドライバを使用し、ブートデバイスへのパスを冗長化する手順を示します。

システムボリュームのファイルシステムにより手順が異なります。

4.2.2.2.1 Solaris 10 UFS ファイルシステムの場合

ここでは、Solaris 10 UFSファイルシステムの場合の手順を示します。

1. ストレージシステムを指定してブートし、ETERNUS マルチパスドライバのインストールを行います。

61

 シングルシステム(非クラスタシステム)の場合

ストレージシステム上のブートディスクからホストを起動し、「ソフトウェア説明書 FUJITSU Storage ETERNUS

Multipath Driver 3.1」を参照してETERNUS マルチパスドライバのインストールを行ってください。また、インス

トール完了後の以下の問い合わせに対して"y"を入力してください。自動的にgrmpdautoconf コマンドが実行され、

マルチパスを構築します。

Do you want to make a multipath configuration now ?

すでにETERNUSマルチパスドライバのパッケージがインストールされている場合は、grmpdautoconfを実行して、

マルチパスを構築します。

# /usr/sbin/grmpdautoconf <RETURN>

 クラスタシステムの場合

ストレージシステム上のブートディスクからホストを起動し、「ソフトウェア説明書 FUJITSU Storage ETERNUS

Multipath Driver 3.1」を参照してETERNUS マルチパスドライバのインストールを行ってください。また、インス

トール完了後の以下の問い合わせに対して"n"を入力してください。

Do you want to make a multipath configuration now ?

(1) mplbconfigコマンドを実行します。

# /usr/sbin/mplbconfig -o /tmp/mplb-file1 <RETURN>

*** Phase 1: checking /dev/rdsk ***

*** Phase 2: checking multi path ***

*** Phase 3: analyzing path ***

=== Reconfigure plan ===

Multi path : 0 Create new multi path : 11

Add path for multi path : 0 (instance) : 0 (add path) Delete path from multi path : 0 (instance) : 0 (delete path)

(2) ブートディスク以外の行を削除します。viエディタ等で /tmp/mplb-file1を編集し、ブートディスクとして使 用するパス以外を削除します。

このとき、マルチパスのインスタンス番号は、クラスタを構成する各ノード間で重複しない番号にする必要 があります。インスタンス番号(mplbXのX)は、0~2047の範囲で他のノードと重複しない番号に変更してく ださい。

*** mplb config file ***

Path : Action : Element path : LUN : Storage

mplb0 : new : c1t500000E0D00AD706d0s2 c2t500000E0D00AD787d0s2 : 0 : E3000- 000AD7 (3) 編集したファイルを反映させ、システムボリュームをマルチパス化します。

# /usr/sbin/mplbconfig -f /tmp/mplb-file1 <RETURN>

*** Phase 1: checking /dev/rdsk ***

*** Phase 2: checking multi path ***

*** Phase 3: analyzing path ***

*** Phase 3.1: updata plan ***

mplb0 : new : c1t500000E0D00AD706d0s2 c2t500000E0D00AD787d0s2 : 0 : E3000- 000AD7

=== Reconfigure plan ===

Multi path : 0 Create new multi path : 1

Add path for multi path : 0 (instance) : 0 (add path) Delete path from multi path : 0 (instance) : 0 (delete path) Do you want to execute this plan (y/n)?

y <RETURN>

*** Phase 4: reconfigure ***

*** Phase 5: result is SUCCESS ***

全てのノードで(1)~(3)を実行します。

62 以降の手順は全ノードで行います。

ただし、mplbインスタンス番号はそれぞれのノード毎に指定したインスタンス番号を使用してください。

2. マルチパスが構築されていることを確認します。

1つのパスでステータスが"offline fail unblock "no such device or address"と出力されます。また/var/adm/messages に以下のメッセージが出力されますが、無視して次の手順に進んでください。

# /usr/opt/FJSViomp/bin/iompadm info <RETURN>

IOMP: /dev/FJSVmplb/fiomp/adm0 Element:

/dev/rdsk/c1t500000E0D00AD706d0s2 offline fail unblock "no such device or address [E3000- 000AD7-CM10-CA10-PORT00] (ssd3)"

/dev/rdsk/c2t500000E0D00AD787d0s2 online active block "good status [E3000- 000AD7-CM11-CA11-PORT03] (ssd5)"

Node:

/dev/FJSVmplb/rdsk/mplb0s0 /dev/FJSVmplb/rdsk/mplb0s1 /dev/FJSVmplb/rdsk/mplb0s2 /dev/FJSVmplb/rdsk/mplb0s3 /dev/FJSVmplb/rdsk/mplb0s4 /dev/FJSVmplb/rdsk/mplb0s5 /dev/FJSVmplb/rdsk/mplb0s6 /dev/FJSVmplb/rdsk/mplb0s7 Function:

MPmode=true AutoPath=true Block=true NeedSync=false

IOMP: /dev/FJSVmplb/fiomp/adm1 Element:

/dev/rdsk/c1t500000E0D00AD706d1s2 online active block "good status [E3000- 000AD7-CM10-CA10-PORT00] (ssd2)"

/dev/rdsk/c2t500000E0D00AD787d1s2 online standby block "good status [E3000- 000AD7-CM11-CA11-PORT03] (ssd4)"

Node:

/dev/FJSVmplb/rdsk/mplb1s0 /dev/FJSVmplb/rdsk/mplb1s1 /dev/FJSVmplb/rdsk/mplb1s2 /dev/FJSVmplb/rdsk/mplb1s3 /dev/FJSVmplb/rdsk/mplb1s4 /dev/FJSVmplb/rdsk/mplb1s5 /dev/FJSVmplb/rdsk/mplb1s6 /dev/FJSVmplb/rdsk/mplb1s7 Function:

MPmode=true AutoPath=true Block=true NeedSync=false

# [メッセージ]

mplb: [ID 961213 kern.notice] NOTICE: mplb0: I/O Lun degraded.

/pci@1,700000/pci@0/pci@0/QLGC,qlc@0/fp@0,0/ssd@w500000e0d00ad706,0:c,raw remaining online path number of this lun =1

mplb: [ID 827990 kern.warning] WARNING:

/pci@1,700000/pci@0/pci@0/QLGC,qlc@0/fp@0,0/ssd@w500000e0d00ad706,0:c,raw this path was unrecognizable. -> (E3000- 000AD7-10-10-00)

3. デバイスパス名を調べます。

63

ブートデバイスのデバイスパス名を調べます。1.のgrmpdautoconfコマンドまたはmplbconfigコマンドにおいて、

マルチパス管理用特殊ファイルと、選択したアクセス用特殊ファイルの組み合わせを表示します。ls コマンドを 使用し、この出力からブートディスクと、各構成パスの物理デバイスパス名を確認します。確認した物理デバイ スパス名は、後述の6. と7.の設定で使用します。

# ls -l <ブートディスクのスライス0 > <RETURN>

# ls -l <各構成パスのスライス0 > <RETURN>

grmpdautoconf またはmplbconfigの出力内容が以下の場合を例にします。

*** Phase 1: checking /dev/rdsk ***

*** Phase 2: checking multi path ***

*** Phase 3: analyzing path ***

Path : Action : Element path : LUN : Storage

mplb0 : new : c1t500000E0D00AD706d0s2 c2t500000E0D00AD787d0s2 : 0 : E3000- 000AD7 mplb1 : new : c1t500000E0D00AD706d1s2 c2t500000E0D00AD787d1s2 : 1 : E3000- 000AD7 この場合、ブートディスクと、それを構成する各パスは以下になります。

ブートディスクのスライス0 /dev/FJSVmplb/rdsk/mplb0s0 構成パスのスライス0 /dev/rdsk/c1t500000E0D00AD706d0s0

/dev/rdsk/c2t500000E0D00AD787d0s0 ls コマンドを使用し、デバイスパス名を調べます。

# ls -l /dev/FJSVmplb/rdsk/mplb0s0 <RETURN>

lrwxrwxrwx 1 root root 36 Mar 13 12:57 /dev/FJSVmplb/rdsk/mplb0s0 -> ../../../devices/pseudo/mplb@0:a,raw

# ls -l /dev/dsk/c1t500000E0D00AD706d0s0 <RETURN>

lrwxrwxrwx 1 root root 82 Mar 13 12:03 /dev/dsk/c1t500000E0D00AD706d0s0

-> ../../devices/pci@1,700000/pci@0/pci@0/QLGC,qlc@0/fp@0,0/ssd@w500000e0d00ad706,0:a

# ls -l /dev/dsk/c2t500000E0D00AD787d0s0 <RETURN>

lrwxrwxrwx 1 root root 84 Mar 13 12:03 /dev/dsk/c2t500000E0D00AD787d0s0

-> ../../devices/pci@1,700000/pci@0/pci@0/QLGC,qlc@0,1/fp@0,0/ssd@w500000e0d00ad787,0:a

4. confファイルの設定を行います。

排他オープン解除のため、/kernel/drv/mplb.confを編集します。

「# Global user option define」の下に"mplb-open-lock=0;"を追加します。

# vi /kernel/drv/mplb.conf <RETURN>

#

# Copyright (c) 2013 by Fujitsu, Ltd.

# All rights reserved.

#

#ident "@(#)mplb.conf 1.0 2013/12/24"

#

# Global define ddi-forceattach=1;

ddi-no-autodetach=1;

# Global user option define mplb-open-lock=0;

# Meta control device

name="mplb" parent="pseudo" instance=4095;

64 name="mplb" parent="pseudo" instance=0

iomp-name="mplb0" iomp-real-name="/pseudo/mplb@0:adm"

iomp-path-0="/pci@1,700000/pci@0/pci@0/QLGC,qlc@0/fp@0,0/ssd@w500000e0d00ad706,0:c,raw"

iomp-path-1="/pci@1,700000/pci@0/pci@0/QLGC,qlc@0,1/fp@0,0/ssd@w500000e0d00ad787,0:c,raw"

iomp-user-path="/dev/FJSVmplb/rdsk/mplb0s2"

iomp-logical-path-0="/dev/rdsk/c1t500000E0D00AD706d0s2"

iomp-logical-path-1="/dev/rdsk/c2t500000E0D00AD787d0s2" iomp-path-num=2 mplb-major-minor-number-0=118,26 mplb-major-minor-number-1=118,42 mplb-disk-controller-name-0="E3000- 000AD7-10-10-00"

mplb-disk-controller-name-1="E3000- 000AD7-11-11-03"

mplb-uniq-id="600000E00D00000000000AD7008D0000";

name="mplb" parent="pseudo" instance=1

iomp-name="mplb1" iomp-real-name="/pseudo/mplb@1:adm"

iomp-path-0="/pci@1,700000/pci@0/pci@0/QLGC,qlc@0/fp@0,0/ssd@w500000e0d00ad706,1:c,raw"

iomp-path-1="/pci@1,700000/pci@0/pci@0/QLGC,qlc@0,1/fp@0,0/ssd@w500000e0d00ad787,1:c,raw"

iomp-user-path="/dev/FJSVmplb/rdsk/mplb1s2"

iomp-logical-path-0="/dev/rdsk/c1t500000E0D00AD706d1s2"

iomp-logical-path-1="/dev/rdsk/c2t500000E0D00AD787d1s2" iomp-path-num=2 mplb-major-minor-number-0=118,18 mplb-major-minor-number-1=118,34 mplb-disk-controller-name-0="E3000- 000AD7-10-10-00"

mplb-disk-controller-name-1="E3000- 000AD7-11-11-03"

mplb-uniq-id="600000E00D00000000000AD7009E0000";

5. サーバを再起動します。

再起動時に以下のメッセージが出力される場合がありますが、無視して次の手順に進んでください。

# /usr/sbin/shutdown -i6 -g0 -y <RETURN>

[メッセージ]

NOTICE: mplb0: I/O Lun degraded.

/pci@1,700000/pci@0/pci@0/QLGC,qlc@0/fp@0,0/ssd@w500000e0d00ad706,0:c,raw remaining online path number of this lun =1

WARNING: /pci@1,700000/pci@0/pci@0/QLGC,qlc@0/fp@0,0/ssd@w500000e0d00ad706,0:c,raw this path was unrecognizable. -> (E3000- 000AD7-10-10-00)

6. ETERNUSマルチパスの設定を行います。

(1) システム上の設定をマルチパス化に沿うように修正します。

a. ルートデバイスの設定(/etc/system)

/etc/system ファイルを編集し、rootdevを最終行に設定します。

rootdev の設定では、3.で調べたブートディスクの物理デバイス名のうち、先頭の"../../devices" と末尾の

",raw" を削除した残りの部分を設定します。

例:mplb0をシステムボリュームにした場合

rootdev: /pseudo/mplb@0:a

b. マウント情報の設定(/etc/vfstab)

/etc/vfstabファイルを編集し、各エントリについてマルチパス化後のパス名に書き換えます。

/dev/FJSVmplb/dsk/mplb0s0 /dev/FJSVmplb/rdsk/mplb0s0 / ufs 1 no - /dev/FJSVmplb/dsk/mplb0s1 - - swap - no -

(2) ダンプデバイスを確認します。

# dumpadm <RETURN>

Dump content: kernel pages

Dump device: /dev/dsk/c1t500000E0D00AD706d0s1 (swap)

65 Savecore directory: /var/crash/m3000

Savecore enabled: yes Save compressed: on

(3) ダンプデバイスを設定します。

# dumpadm -d /dev/FJSVmplb/dsk/mplb0s1 <RETURN>

(4) ダンプデバイスの確認を行います。

ダンプデバイスがETERNUSマルチパスのパスになっていることを確認してください。

# dumpadm <RETURN>

7. ブートデバイスの設定を行います。

3. で調べた各構成パスの物理デバイス名のうち、先頭の"../../devices" を削除した残りの部分を抜き出し、かつ"ssd"

を"disk"に置き換えたものを設定します。

# eeprom boot-device="/pci@1,700000/pci@0/pci@0/QLGC,qlc@0/fp@0,0/disk@w500000e0d00ad706,0:a /pci@1,700000/pci@0/pci@0/QLGC,qlc@0,1/fp@0,0/disk@w500000e0d00ad787,0:a" <RETURN>

8. /etc/systemファイルを編集し、forceloadの設定を行います。

各ドライバに対するforceloadに関する設定が/etc/systemファイルに存在する場合には、追加設定を行う必要はあ りません。

forceload: drv/emlxs forceload: drv/qlc forceload: drv/ssd forceload: drv/fp forceload: drv/mplb

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

# /usr/sbin/shutdown -i6 -g0 -y <RETURN>

10. マウントされているパスを確認します。

# /usr/bin/df <RETURN>

/ (/dev/FJSVmplb/dsk/mplb0s0): 3588720 blocks 675848 files /devices (/devices ): 0 blocks 0 files /system/contract (ctfs ): 0 blocks 2147483605 files /proc (proc ): 0 blocks 29942 files /etc/mnttab (mnttab ): 0 blocks 0 files /etc/svc/volatile (swap ):56747120 blocks 4746377 files /system/object (objfs ): 0 blocks 2147483449 files /etc/dfs/sharetab (sharefs ): 0 blocks 2147483646 files /dev/fd (fd ): 0 blocks 0 files /tmp (swap ):56747120 blocks 4746377 files /var/run (swap ):56747120 blocks 4746377 files /export/home (/dev/FJSVmplb/dsk/mplb0s7):16442328 blocks 990076 files

11. マルチパスの確認を行います。

全てのパスがonline、good statusとなっていることを確認します。

# /usr/opt/FJSViomp/bin/iompadm info <RETURN>

IOMP: /dev/FJSVmplb/fiomp/adm0 Element:

/dev/rdsk/c1t500000E0D00AD706d0s2 online active block "good status [E3000- 000AD7-CM10-CA10-PORT00] (ssd3)"

/dev/rdsk/c2t500000E0D00AD787d0s2 online standby block "good status

66 [E3000- 000AD7-CM11-CA11-PORT03] (ssd5)"

Node:

/dev/FJSVmplb/rdsk/mplb0s0 /dev/FJSVmplb/rdsk/mplb0s1 /dev/FJSVmplb/rdsk/mplb0s2 /dev/FJSVmplb/rdsk/mplb0s3 /dev/FJSVmplb/rdsk/mplb0s4 /dev/FJSVmplb/rdsk/mplb0s5 /dev/FJSVmplb/rdsk/mplb0s6 /dev/FJSVmplb/rdsk/mplb0s7 Function:

MPmode=true AutoPath=true Block=true NeedSync=false

IOMP: /dev/FJSVmplb/fiomp/adm1 Element:

/dev/rdsk/c1t500000E0D00AD706d1s2 online active block "good status [E3000- 000AD7-CM10-CA10-PORT00] (ssd2)"

/dev/rdsk/c2t500000E0D00AD787d1s2 online standby block "good status [E3000- 000AD7-CM11-CA11-PORT03] (ssd4)"

Node:

/dev/FJSVmplb/rdsk/mplb1s0 /dev/FJSVmplb/rdsk/mplb1s1 /dev/FJSVmplb/rdsk/mplb1s2 /dev/FJSVmplb/rdsk/mplb1s3 /dev/FJSVmplb/rdsk/mplb1s4 /dev/FJSVmplb/rdsk/mplb1s5 /dev/FJSVmplb/rdsk/mplb1s6 /dev/FJSVmplb/rdsk/mplb1s7 Function:

MPmode=true AutoPath=true Block=true NeedSync=false

#

12. クラスタの自動リソース登録を行います。

クラスタシステムの場合、ブートディスク以外は自動リソース登録でマルチパスを構築します。

67

4.2.2.2.2 Solaris 10 ZFS ファイルシステム、Solaris 11 ZFS ファイルシステムの場合

ここでは、Solaris 10 ZFSファイルシステム、Solaris 11 ZFSファイルシステムの場合の手順を示します。

ブートディスク(LUN0)と同じ容量のディスク(LUN1)をマッピングしておきます。

Solaris 10、Solaris 11.3以前のOSの場合は、2. から実施してください。

Solaris 11.4の初期インストールを行い、sdドライバがターゲットドライバの場合は、1. の設定を行ってください。

1. マルチパスドライバのインストールを行う前に下記の手順を実施します。

(1) ブートディスク(LUN0)と同じ容量のディスク(LUN1)のディスクスライスの設定をします。

スライス0 に全てのディスク領域を割り当てます。

(2) sdからssdへ変更します。

/etc/devices/inception_pointsファイルを編集します。

scsa-no-binding-set-fcp、scsa-no-binding-set-vhci、swapgeneric-ssd-loads-sdの行をコメントにします。

読み取り専用ファイルのため、"w!"で保存してください。

# vi /etc/devices/inception_points <RETURN>

#

# Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.

#

#

# Customers should not modify this file unless explicitedly directed to do so.

#

# Each non-comment line of the file defines one 'inception_point' keyword.

#

# Each 'inception_point' keyword is associated with a new, but incompatible,

# method of doing something. Typically, a new post-inception_point method is

# established via install: upgrade operation continues in legacy

# pre-inception_point mode. If a keyword is established by other means, expect

# some type of incompatible, and possibly destructive, change on reboot.

#

# An API is provided to determine if the system is running in pre or post

# inception_point keyword mode. The code associated with testing a keyword

# looks something like

#

# if (ddi_inception_point_established("keyword")) {

# post-inception_point implementation

# } else {

# legacy pre-inception_point implementation

# }

#

# By tracking when inception points are introduced into this file, relative

# to associated environment at the time of that introduction, future Solaris

# developers can recognize opportunities to remove pre-inception_point code

# and delete the inception-point definition. This opportunities will often

# relate to platform EOL.

#

# In summary, the 'inception_point' mechanism gives us a way of both

# introducing incompatible change, and (eventually) retiring legacy code.

#

# inception_point keyword descriptions and definitions follow:

# scsa-no-binding-set-fcp/scsa-no-binding-set-vhci:

# When these inception point keywords are established the

#

# scsi_hba.c:scsi_hba_nodename_compatible_get()

#

# code no longer needs to create an fcp or vhci binding-set specific

# /usr/sbin/format /dev/rdsk/c0t6000B5D0006A0000006A0753000A0000d1s0 <RETURN>