# Compaq OpenVMS
OpenVMS Cluster 構成ガイド

前へ | 次へ | 目次 | 索引

## 6.7.4 パス識別子

以下の項で説明するシステム管理コマンドでは，マルチパス・フェールオーバの操作を監視，制御できます。これらのコマンドでは，マルチパス・セット内の各パスを別々のものとして指定するパス識別子を渡します。

直接 Fibre Channel パスはローカル・アダプタ名とリモート Fibre Channel ポート WWID，つまり，イニシエータとターゲットで識別します。たとえば， 図 6-21 では，左側のホスト・アダプタから左側の HSG ストレージ・コントローラまでのパスのパス識別子は PGB0.5000-1FE1-0000-0200 です。 (各 HSG の 2 番目のシリアル・ポートは便宜上省略しています。) ストレージ・コントローラの WWID はコンソールから取得します。

図 6-21 Fibre Channel パスの命名

直接パラレル SCSI パスは，ローカル・ホスト・アダプタ名とリモート SCSI バス ID，つまり，イニシエータとターゲットで識別します。たとえば 図 6-22 ，ディスクまでのノード Edgar の 2 本の直接パスの名前は PKB0.5 と PKC0.5 です。

MSCP サービス対象のパスのパス識別子は `MSCP`です。

図 6-22 複数の直接パスによる構成

## 6.7.5 パスの表示

マルチパス・サポートが有効な場合，以下のどちらかの SHOW DEVICE DCL コマンドの変数により，デバイスまで複数のパスを表示できます。

    SHOW DEVICE/FULL device-name

    SHOW DEVICE/MULTIPATH_SET device-name

SHOW DEVICE/FULL device-name コマンドでは，デバイスに関する一般的な情報を最初に表示し，次に，デバイスまでのすべてのパスをパス識別子で表示します ( 第 6.7.4 項 参照)。

SHOW DEVICE/MULTIPATH_SET device-name コマンドでは，デバイスまでの複数のパスだけを表示します。

マルチパス情報は，マルチパス・デバイスに直結されたノード上にのみ表示されます。

### 6.7.5.1 SHOW DEVICE/FULL によるパスの表示

以下の例は，SHOW DEVICE/FULL device-name コマンドの出力です。表示の先頭 ( `device has multiple I/O paths`) で複数のパスの使用が明示されており，複数パスの記述が表示の最後まで， `I/O paths to device`の下まで続いています。また，表示の先頭にある `Error count`と `Operations completed`の値は，各パスのカウントの合計となっています。

    $ SHOW DEVICE/FULL $70$DKA100:

    Disk $70$DKA100: (FLAM10), device type DEC HSZ70, is online, mounted, file-
        oriented device, shareable, device has multiple I/O paths, served to cluster
        via MSCP Server, error logging is enabled.

        Error count                    2    Operations completed             123471
        Owner process                 ""    Owner UIC                      [SYSTEM]
        Owner process ID        00000000    Dev Prot            S:RWPL,O:RWPL,G:R,W
        Reference count                1    Default buffer size                 512
        Total blocks             4109470    Sectors per track                    85
        Total cylinders             3022    Tracks per cylinder                  16
        Allocation class              70

        Volume label        "X6MV_SYS_1"    Relative volume number                0
        Cluster size                   9    Transaction count                     1
        Free blocks              2040228    Maximum files allowed            205524
        Extend quantity                5    Mount count                           4
        Mount status              System    Cache name        "_$600$DKA0:XQPCACHE"
        Extent cache size             64    Maximum blocks in extent cache   204022
        File ID cache size            64    Blocks currently in extent cache      0
        Quota cache size               0    Maximum buffers in FCP cache       2594
        Volume owner UIC           [1,1]    Vol Prot    S:RWCD,O:RWCD,G:RWCD,W:RWCD

      Volume Status:  ODS-2, subject to mount verification, file high-water marking,
          write-back caching enabled.
      Volume is also mounted on FIBRE3, COB2, FLAM10.

      I/O paths to device              2
      Path PKC0.1  (SISKO), primary path, current path.
        Error count                    1    Operations completed             121001
      Path PKB0.1  (SISKO).
        Error count                    1    Operations completed               2470

マルチパス・デバイスのパスごとに，パス識別子，そのパスに関連付けられたホスト名，パス状態，エラー・カウント，操作カウントが表示されます。

このコード例で複数のパスの部分に表示される用語については， 表 6-4 を参照してください。

表 6-4 SHOW DEVICE/FULL マルチパス用語
用語 | 説明
--- | ---
Primary path（プライマリ・パス） | オペレーティング・システムが最初に検出するパスです。
Current path（現在のパス） | I/O に現在使用されているパスです。
User disabled（ユーザ無効） | DCL コマンド SET DEVICE/NOENABLE が，このパスに対して実行済みです
Polling disabled（ポーリング無効） | DCL コマンド SET DEVICE/NOPOLL が，このパスに対して実行済みです。
Unavailable（使用不可） | ソフトウェア・コネクタがこのパスに関連付けられていないためにこのパスは使用できません。
MSCP host unavailable（MSCP ホスト使用不可） | リモート・ホスト上の MSCP サーバまでの接続を使用できません。

### 6.7.5.2 SHOW DEVICE/MULTIPATH_SET によるパスの表示

指定デバイスの複数のパスの簡単なリストは，割り当てクラスのすべてのデバイスまたは，すべてのデバイスについて，DCL コマンドで表示できます。

    SHOW DEVICE/MULTIPATH_SET [device-name]

デバイス名は任意です。省略するとマルチパス・セットを構成するすべてのデバイスが表示されます。検出されたマルチパス・デバイスごとに，デバイス名，ホスト名，デバイス状態，エラー・カウント，アクセスできるパス数，パスの総数，現在のパスのパス識別子が表示されます。

表示されるホスト名は，現在のパスのホスト名です。直接パスの場合，ローカル・システムのホスト名です。MSCP サービス対象のパスの場合，デバイスのアクセス・サービスを担当するリモート・システムのホスト名です。

以下の例は，SHOW DEVICE /MULTIPATH コマンドの出力です。

    $ SHO DEV /MULTIPATH
    Device                  Device           Error          Current
    Name                   Status           Count   Paths    path
    $70$DKA0:     (FIBRE3)  Online               0   3/ 3   PKB0.0
    $70$DKA100:   (FIBRE3)  MountVerify         11   2/ 3   PKB0.1
    $70$DKA200:   (FIBRE3)  Mounted              0   3/ 3   PKC0.2
    $70$DKA300:   (FIBRE3)  Mounted              2   1/ 3   PKC0.3
    $70$DKA400:   (FIBRE3)  Mounted              4   3/ 3   PKC0.4
    $70$DKA500:   (FIBRE3)  Mounted              7   3/ 3   PKC0.5
    $70$DKA1400:  (FIBRE3)  Mounted              0   3/ 3   PKC0.14
    $70$DKA1500:  (FIBRE3)  Mounted              4   3/ 3   PKB0.15
    $100$DKA100:  (FIBRE3)  Online               0   2/ 2   PKA0.1
    $100$DKA200:  (FIBRE3)  Mounted              3   2/ 2   PKA0.2
    $100$DKA300:  (FIBRE3)  Online               0   2/ 2   PKA0.3
    $100$DKA400:  (FIBRE3)  Online wrtlck        0   2/ 2   PKA0.4

$70$DKA などデバイス名の一部を指定すると，デバイスが $70$DKA で始める複数のパスとともに表示されます。

## 6.7.6 パス・ポーリング

SCSI マルチパス・サポートが有効な場合，各ホスト・アダプタから HSZ コントローラまたは HSG コントローラまでのすべての I/O パスを定期的にポーリングして各 I/O パスの状態を判定します。システムがパスの変化を検出すると，以下のようなメッセージをコンソールとオペレータのログに出力します。

    All multipath devices on path PKB0.5 are either disabled or not reachable.

または

    At least one multipath device on path PKB0.5 is enabled and reachable.

パス上のすべてのデバイスを削除すると，パス障害が報告されます。このとき，ホストから HSx コントローラまでのパスは有効な場合もありますが，ポーリングするデバイスがないと有効かどうかはわかりません。

ポーリングは，以下のコマンドでオンまたはオフします。

    SET DEVICE device/[NO]POLL/PATH=path-identifier

長期間サービス対象外にするパスでは，ポーリングをオフにすればシステム・オーバヘッドを節約できて便利です。

## 6.7.7 現在のパスへの手動切り替え

デバイスの現在のパスは，SET DEVICE コマンドに /SWITCH 修飾子を指定して手動で切り替えることができます。パスの切り替えは，一般には，複数の HSx コントローラ・モジュールとバス全体の I/O 負荷をバランスさせるときに利用します。

現在のパスの切り替えのコマンド構文は次のとおりです。

    SET DEVICE device-name/SWITCH/PATH=path-identifier

以下のコマンドでは，デバイス $2$DKA502 から MSCP サービス対象のパスまでのパスを切り替えます。

    $ SET DEVICE $2$DKA502/SWITCH/PATH=MSCP

このコマンドを実行するとパスの切り替えが開始し，ただちに DCL プロンプトに戻ります。 DCL プロンプトが再表示されて，パスの切り替えの終了するまでに遅延が発生することがあります。

パスの手動切り替えでは，マウント検証メッセージと，パス切り替え要求の結果を示す状態メッセージが表示されます。 例 6-1 にこれを示します。

例 6-1 パスの手動切り替え時のメッセージ
    %%%%%%%%%%%  OPCOM  17-MAR-1999 20:48:56.66
    Device $1$DGA50: (FCNOD1 PGA, FCNOD2) is offline.
    Mount verification is in progress.

    _$
    %%%%%%%%%%%  OPCOM  17-MAR-1999 20:49:12.30
    Mount verification has completed for device $1$DGA50: (FCNOD1 PGA, FCNOD2)

    %%%%%%%%%%%  OPCOM  17-MAR-1999 20:49:12.31
    Multipath access to device $1$DGA50: has been manually switched from
    path PGB0.5000-1FE1-0000-0D13 to path PGA0.5000-1FE1-0000-0D12

パス切り替えの終了は，SHOW DEVICE/FULL コマンドか SHOW DEVICE/MULTIPATH コマンドを実行すれば確認できます。

切り替え操作時に，パスの手動切り替えで指定したパスに障害が発生すると，自動パス切り替えが実行されます。この場合，コマンドで指定したパスとは別のパスに切り替えられる場合があります。

パスの手動切り替えで仮想装置を 1 つの HSG80 コントローラから別のコントローラに切り替えると，クラスタの別のノードにコマンドが影響する場合があります。そのようなノードでは，それぞれの現在のパスにおけるマウント検証が実行されます。その場合，他の HSG80 コントローラ上のパスへの自動切り替えが発生します。 例 6-2 は，このイベントを表すメッセージです。

例 6-2 他のノードがパス切り替えを検出したときに表示されるメッセージ
    %%%%%%%%%%%  OPCOM  17-MAR-1999 20:50:56.66
    Device $1$DGA50: (FCNOD1 PGA, FCNOD2) is offline.
    Mount verification is in progress.

    _$
    %%%%%%%%%%%  OPCOM  17-MAR-1999 20:51:12.30
    Mount verification has completed for device $1$DGA50: (FCNOD1 PGA, FCNOD2)

    %%%%%%%%%%%  OPCOM  17-MAR-1999 20:51:12.31
    Multipath access to device $1$DGA50: has been automatically switched from
    path PGB0.5000-1FE1-0000-0D13 to path PGA0.5000-1FE1-0000-0D11

## 6.7.8 OpenVMS によるパス選択

マルチパス構成では，OpenVMS でデバイスまでのパスを構成すると，最初の現在パスとして選択されます。この場合，以下のように HSx コンソール・コマンドで選択した優先パスの選択が無効になります。

    HSG> SET UNIT PREFERRED_PATH=THIS_CONTROLLER

または

    HSG> SET UNIT PREFERRED_PATH=OTHER_CONTROLLER

そのため，HSx コンソールから OpenVMS システム・マネージャで優先パスを設定するのはお勧めできません。 第 6.7.7 項 で説明したパスの手動切り替えコマンドを使用してください。

フェールオーバの発生時に，OpenVMS は以下の優先順位に従って代替パスを選択します。

1. 手動スイッチ・コマンドでシステム・マネージャが指定するパス

2. HSx コントローラ・モジュールから別のモジュールまでのフェールオーバが不要な直接パス

3. HSx フェールオーバが必要な直接パス

4. MSCP サービス対象のパス

OpenVMS は，以下のような理由から， HSx コントローラ・モジュール間で不必要にフェールオーバが行われないような仕組みになっています。

- HSx コントローラ・モジュール間のフェールオーバが発生すると，同期する必要のあるキャッシュ・データの量にもよるが，約 1 秒から 15 秒の遅延が発生する。

- デバイスまでのアクセスを共用する他のノードが，代替パスにより通信を再び確立する必要がある。

## 6.7.9 OpenVMS によるマルチパス・フェールオーバの方法

マルチパス・ディスクに対する I/O 動作が失敗し，(現在のパスまたは代替パス上の) 再試行で回復できる可能性がその障害プロセスで判明すると，以下のようにフェールオーバが実行されます。

1. マウント検証が呼び出されます。

2. マウント検証により，現在のパス上のデバイスとの通信が試行され，ボリュームが正しいかどうか確認されます。

3. 現在のパスでマウント検証が失敗すると，以下の順序で新しいパスが検索されます。

   - HSx フェールオーバが不要な直接パスにおいて 2，3 回試行します (再試行回数は SYSGEN パラメータ MPDEV_LCRETRIES で制御します)。これは他に優先して選択の機会を与えるためです。

   - 任意の直接パスで再試行します。

   - サービス対象のパスをはじめとする任意のパスで再試行します。

   作業パスが見つかるか，マウント検証が時間切れになるまで以上の手順を繰り返します。

4. マウント検証が成功すると，障害が発生したすべての I/O が再開され，新しい I/O が実行されます。

## 6.7.10 パス切り替え候補としてのパスの有効化または無効化

デフォルトで，すべてのパスがパス切り替えの候補になります。パスは，SET DEVICE コマンドに /[NO]ENABLE 修飾子を指定して，切り替え候補として無効化または再有効化できます。以下のような場合にこの操作をします。

- 特定のパスに障害があることがわかっている場合や，そのパスにフェールオーバを実行するとクラスタのメンバ内にアクセスを失うメンバが発生する場合。

- 選択したパスがサービス利用中であるとき，そのパスに対する自動切り替えを避けたい場合。

現在のパスは無効にできませんので注意してください。

パスを有効，無効にするためのコマンド構文は以下のとおりです。

    $ SET DEVICE device-name/[NO]ENABLE/PATH=path-identifier

以下のコマンドでは，デバイス $2$DKA502 の MSCP サービス対象のパスが有効になる。

    $ SET DEVICE $2$DKA502/ENABLE/PATH=MSCP

以下のコマンドでは，デバイス $2$DKA502 のローカル・パスが無効になる。

    $ SET DEVICE $2$DKA502/ENABLE/PATH=PKC0.5

パスを無効にするときは注意が必要です。 図 6-20 にあるような無効な構成を作成しないようにしてください。

## 6.7.11 コンソールについての考慮

ここでは，パラレル SCSI マルチパス・デバイスとコンソールを併用する方法を説明します。FC マルチパス・デバイスとコンソールを併用する方法については， 第 7.6 節 を参照してください。

コンソールでは，一般的な，パス依存の SCSI デバイス名を使用します。たとえば，ディスクのデバイス名形式では，DK の後に，ホスト・アダプタを表す文字， SCSI ターゲット ID，LUN を続けます。

つまり，マルチパス・デバイスでは，アクセス時に使用するすべてのホスト・アダプタ名からなる複数の名前が使用されます。以下のコンソール出力例では，デバイス・コマンド，つまりコンソール・デバイス名が左列に表示されています。中央と右の列は，デバイス・タイプ固有のその他情報です。

ここで，たとえばデバイス `dkb100`とデバイス `dkc100`が同じデバイスまでの 2 本のパスとします。 `dkb100`は，アダプタ PKB0 を通るパスの名前であり， `dkc100` はアダプタ PKC0 を通るパスの名前です。これは中央の列を見ればわかります。ここでは，情報名に HSZ 割り当てクラスが指定されています。 HSZ 割り当てクラスにより，同じ HSZ デバイスまでの"デバイス"がどれかわかります。

注意 コンソールでは，コンソール INIT コマンドを発行するまで HSZ 割り当てクラスの値の変更を認識できません。

    >>>sho dev
    dkb0.0.0.12.0              $55$DKB0                       HSZ70CCL  XB26
    dkb100.1.0.12.0            $55$DKB100                        HSZ70  XB26
    dkb104.1.0.12.0            $55$DKB104                        HSZ70  XB26
    dkb1300.13.0.12.0          $55$DKB1300                       HSZ70  XB26
    dkb1307.13.0.12.0          $55$DKB1307                       HSZ70  XB26
    dkb1400.14.0.12.0          $55$DKB1400                       HSZ70  XB26
    dkb1500.15.0.12.0          $55$DKB1500                       HSZ70  XB26
    dkb200.2.0.12.0            $55$DKB200                        HSZ70  XB26
    dkb205.2.0.12.0            $55$DKB205                        HSZ70  XB26
    dkb300.3.0.12.0            $55$DKB300                        HSZ70  XB26
    dkb400.4.0.12.0            $55$DKB400                        HSZ70  XB26
    dkc0.0.0.13.0              $55$DKC0                       HSZ70CCL  XB26
    dkc100.1.0.13.0            $55$DKC100                        HSZ70  XB26
    dkc104.1.0.13.0            $55$DKC104                        HSZ70  XB26
    dkc1300.13.0.13.0          $55$DKC1300                       HSZ70  XB26
    dkc1307.13.0.13.0          $55$DKC1307                       HSZ70  XB26
    dkc1400.14.0.13.0          $55$DKC1400                       HSZ70  XB26
    dkc1500.15.0.13.0          $55$DKC1500                       HSZ70  XB26
    dkc200.2.0.13.0            $55$DKC200                        HSZ70  XB26
    dkc205.2.0.13.0            $55$DKC205                        HSZ70  XB26
    dkc300.3.0.13.0            $55$DKC300                        HSZ70  XB26
    dkc400.4.0.13.0            $55$DKC400                        HSZ70  XB26
    dva0.0.0.1000.0            DVA0
    ewa0.0.0.11.0              EWA0              08-00-2B-E4-CF-0B
    pka0.7.0.6.0               PKA0                  SCSI Bus ID 7
    pkb0.7.0.12.0              PKB0                  SCSI Bus ID 7  5.54
    pkc0.7.0.13.0              PKC0                  SCSI Bus ID 7  5.54

コンソールでは，現在のパスで I/O に障害が発生すると，デバイスまでの代替パスに自動的に切り替えます。多くのコンソール・コマンドでは，コンソールがアクセスするデバイスのリストを優先順に指定できます。デバイスの複数のパスに対応するマルチパス構成では，デバイスの複数のパスに対応するコンソール・デバイス名のリストを指定できます。たとえば，以下のようなブート・コマンドでは，最初に DKB100 パスでマルチパス・デバイスがブートされ，それが失敗すると，DKC100 パスでブートされます。

    BOOT DKB100, DKC100

前へ | 次へ | 目次 | 索引