2.7.1 自動パス切り替え
自動的にパスを切り替える機能である,自動フェールオーバーと自動フェールバックについて説明します。
(1) 自動フェールオーバー
使用中のパスで障害を検知した場合,そのパスを閉塞状態にして,ほかの稼働状態のパスを使用してシステムの運用を続けることができます。これを,自動フェールオーバーと呼びます。自動フェールオーバーの対象となる障害は,パスに発生した次のレベルの障害です。
- Critical
致命的で,システム停止の危険がある障害
- Error
危険度は高いが,フェールオーバーなどで回避できる障害
障害レベルについては,「2.10.2 障害情報のフィルターリング」を参照してください。
切り替え先のパスは,同じLUにアクセスするオーナーパス,ノンオーナーパスの順で選択されます。
HDLMがサポートするストレージシステムは,通常すべてのパスがオーナーパスになるため,同じLUにアクセスするすべてのパスが同時に切り替え先の候補になります。例えば,「図2‒8 パスの切り替え」で(A)のパスだけでLUにアクセスしている場合,使用中のパスが閉塞状態になったあとは,(B),(C),(D)のパスのどれかが切り替え先になります。
ノンオーナーパスがある場合,切り替え先のパスは同じLUにアクセスするオーナーパス,ノンオーナーパスの順で選択されます。例えば,「図2‒8 パスの切り替え」でCHA0側がオーナーパス,CHA1側がノンオーナーパスであるとします。(A)のパスだけでLUにアクセスしている場合,使用中のパスが閉塞状態になったあとは,(B)のパスが第1候補,(C)または(D)のパスが第2候補の切り替え先になります。
- 注
ノンオーナーパスがあるのは,次の場合です。
global-active deviceを使用している場合で,non-preferred path optionを設定しているとき
同じLUにアクセスするパスの間での,切り替え先のパスの優先順位については,「(2) 切り替え先のパスの優先順位」を参照してください。
(2) 切り替え先のパスの優先順位
パスの優先順位は,ホストのマシンのアーキテクチャーによって異なります。
マシンのアーキテクチャーがCHRPの場合は,同じLUにアクセスするパスの間では,パスごとの優先順位を第1キー,スロット番号を第2キー,CHAポートを第3キー,パス管理PATH_IDを第4キーにして,値が小さい順に切り替え先のパスが選択されます。
マシンのアーキテクチャーがCHRP以外の場合は,パスごとの優先順位を第1キー,第2キーをCHAポート番号,第3キーをパス管理PATH_IDにして,値が小さい順に切り替え先のパスが選択されます。
キーとなる各項目について説明します。
- パスごとの優先順位
パスごとに設定されている優先順位です。設定できる優先順位は1~255です。値が小さい方が優先度は高くなります。デフォルト値は1です。優先順位はOSのコマンドで設定します。優先順位を設定する手順を次に示します。
次のコマンドを実行して,LU内のパス情報を表示します。
# lspath -l hdisk4 -F"name parent path_id connection path_status status" hdisk4 fscsi0 0 50060e8005271720,31000000000000 使用可能 使用可能 hdisk4 fscsi1 1 50060e8005271730,31000000000000 使用可能 使用可能 hdisk4 fscsi2 2 50060e8005271740,31000000000000 使用可能 使用可能 hdisk4 fscsi3 3 50060e8005271750,31000000000000 使用可能 使用可能
次のコマンドを実行して,変更するパス情報を表示します。
# lspath -l hdisk4 -p fscsi0 -w 50060e8005271720,31000000000000 -E scsi_id 0x651400 SCSI ID 偽 node_name 0x50060e8005271720 FC Node Name 偽 state Enabled N/A 真 priority 1 N/A 真
次のコマンドを実行して,優先順位を変更します。
# chpath -l hdisk4 -p fscsi0 -w 50060e8005271720,31000000000000 -a priority=5 パスは変更済みです
次のコマンドを実行して,変更した優先順位を確認します。
# lspath -l hdisk4 -p fscsi0 -w 50060e8005271720,31000000000000 -E scsi_id 0x651400 SCSI ID 偽 node_name 0x50060e8005271720 FC Node Name 偽 state Enabled N/A 真 priority 5 N/A 真
- スロット番号
HBAが搭載されているスロットの位置を示す値です。
スロット番号の大小は,物理ロケーション・コードで比較できます。
物理ロケーション・コードを取得する方法を次に示します。
次のコマンドを実行して,パス管理PATH_IDからhdiskを求めます。
# /usr/DynamicLinkManager/bin/dlnkmgr view -drv PathID HDevName OSPathID LDEV 000000 hdisk6 00000 VSP_Ex00.621020.0000AA 000001 hdisk6 00001 VSP_Ex00.621020.0000AA 000002 hdisk7 00000 VSP_Ex00.621020.0000AB 000003 hdisk7 00001 VSP_Ex00.621020.0000AB 000004 hdisk8 00000 VSP_Ex00.621020.0000AC 000005 hdisk8 00001 VSP_Ex00.621020.0000AC
次のコマンドを実行して,hdiskの親デバイス(HBAデバイスインスタンス)を求めます。
# lsdev -C -l hdisk2 -F 'parent' fscsi0
次のコマンドを実行して,HBAデバイスインスタンスから物理ロケーション・コードを求めます。
# lscfg -vp -l fscsi0
物理ロケーション・コードが「Uaa.bb-Pcc-Idd」の形式で取得されます。先頭のUaa.bbは使用しているホストの機種に依存します。aabbccddの小さい順でパスが選択されます。物理ロケーション・コードがほかのフォーマットの場合にはパスの優先順位は「不定」となります。ただし,同一環境では再起動などで最優先のパスが変わることはありません。
- 注意事項
ご使用のHBAによっては,手順2,手順3を繰り返す必要があります。
スロットの具体的な位置については,ホストのマニュアルを参照してください。
- CHAポート番号
CHAポート番号です。
HDLMコマンドのviewオペレーションで確認できます。viewオペレーションについては「6.7 view 情報を表示する」を参照してください。
- パス管理PATH_ID
パスに付けられたIDです。ホスト,またはHDLMマネージャーが起動するたびに割り当て直されます。
HDLMコマンドのviewオペレーションで確認できます。viewオペレーションについては「6.7 view 情報を表示する」を参照してください。
(3) 自動フェールバック
使用中のパスが障害で閉塞状態になった場合,障害回復後に自動的に稼働状態にできます。これを,自動フェールバックと呼びます。この機能を使用した場合,HDLMは定期的に障害回復を監視します。
ノンオーナーパスがある場合,使用するパスは,稼働状態のオーナーパス,ノンオーナーパスの順で選択されます。すべてのオーナーパスが閉塞状態でノンオーナーパスを使用しているときに,オーナーパスの障害が回復して,自動的に稼働状態になると,使用するパスがオーナーパスに切り替わります。
なお,パスに間欠障害※が発生している場合,自動フェールバックの設定をしていると,閉塞状態と稼働状態を繰り返すため,I/Oの性能が低下することがあります。その場合は,間欠障害監視を設定して,間欠障害と見なされたパスを自動フェールバックの対象外にすることをお勧めします。
自動フェールバック機能,および間欠障害監視は,HDLMコマンドのsetオペレーションで指定します。setオペレーションについては,「6.6 set 動作環境を設定する」を参照してください。
- 注
ノンオーナーパスがあるのは,次の場合です。
global-active deviceを使用している場合で,non-preferred path optionを設定しているとき
- 注※
間欠障害とは,ケーブルの接触不良などが原因で,断続的に発生する障害です。