ナビゲーションリンクをスキップ
印刷ビューの終了
| Oracle Solaris Cluster システム管理 Oracle Solaris Cluster 3.3 3/13 (日本語)

検索範囲:

- このドキュメント
- ライブラリ全体

## ディスクパス監視の管理

ディスクパス監視 (DPM) の管理コマンドを使用すれば、セカンダリディスクパス障害の通知を受け取ることができます。このセクションでは、ディスクパスの監視に必要な管理タスクを行うための手順を説明します。ディスクパス監視デーモンに関する概念については、『Oracle Solaris Cluster Concepts Guide』の第 3 章「Key Concepts for System Administrators and Application Developers」を参照してください。コマンドオプションと関連するコマンドについては、`cldevice`(1CL) のマニュアルページを参照してください。`scdpmd` デーモンの調整に関する詳細は、`scdpmd.conf`(4) のマニュアルページを参照してください。デーモンが報告するログエラーに関しては、`syslogd`(1M) のマニュアルページも参照してください。

注 - `cldevice` コマンドを使ってノードに入出力デバイスを追加すると、監視を行なっていた監視リストにディスクパスが自動的に追加されます。Oracle Solaris Cluster コマンドを使ってノードからデバイスを削除すると、 ディスクパスは自動的に監視から除外されます。

表 5-6 タスクマップ: ディスクパス監視の管理

タスク | 手順
--- | ---
ディスクパスを監視します。 | 「ディスクパスを監視する方法」
ディスクパスの監視を解除します。 | 「ディスクパスの監視を解除する方法」
あるノードに対する障害のあるディスクパスのステータスを表示します。 | 「障害のあるディスクパスを表示する方法」
ファイルからディスクパスを監視します。 | 「ファイルからディスクパスを監視する方法」
監視しているすべての共有ディスクパスが失敗したときのノードの自動リブートを有効化または無効化します。 | 「監視しているすべての共有ディスクパスが失敗したときのノードの自動リブートを有効にする方法」 「すべての監視共有ディスクパスが失敗した場合にノードの自動リブートを無効にする方法」
不正なディスクパスステータスを解決します。ブート時に監視対象の DID デバイスを利用できず、DID インスタンスが DID ドライバにアップロードされない場合、不正なディスクパスステータスが報告されることがあります。 | 「ディスクパスのステータスエラーを解決する方法」

`cldevice` コマンドを実行する以下のセクションの手順にはディスクパス引数が含まれます。ディスクパス引数はノード名とディスク名からなります。ただし、ノード名は必須ではありません。指定しないと、`all` が使用されます。

## ディスクパスを監視する方法

このタスクは、クラスタのディスクパスを監視するときに行います。

| 注意 - DPM は、Sun Cluster 3.1 10/03 ソフトウェアより前にリリースされたバージョンを実行するノードではサポートされません。ローリングアップグレードの進行中には DPM コマンドを使用しないでください。すべてのノードがアップグレードされたあとで、DPM コマンドを使用するためにノードをオンラインにする必要があります。

`phys-schost#` プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

1. クラスタの任意のノードで、スーパーユーザーになるか、RBAC の承認 `solaris.cluster.modify` を提供する役割になります。
2. ディスクパスを監視します。

       # cldevice monitor -n node disk

3. ディスクパスが監視されているか確認します。

       # cldevice status device

例 5-38 単一ノードのディスクパスを監視

次の例では、単一ノードから `schost-1:/dev/did/rdsk/d1` ディスクパスを監視します。ディスク `/dev/did/dsk/d1` へのパスを監視するのは、ノード `schost-1` 上の DPM デーモンだけです。

    # cldevice monitor -n schost-1 /dev/did/dsk/d1
    # cldevice status d1

    Device Instance   Node           Status
    --------------- ---- ------
    /dev/did/rdsk/d1   phys-schost-1 Ok

例 5-39 すべてのノードのディスクパスを監視

次の例では、すべてのノードから `schost-1:/dev/did/dsk/d1` ディスクパスを監視します。DPM は、`/dev/did/dsk/d1` が有効なパスであるすべてのノードで起動されます。

    # cldevice monitor /dev/did/dsk/d1
    # cldevice status /dev/did/dsk/d1

    Device Instance   Node           Status
    --------------- ---- ------
    /dev/did/rdsk/d1   phys-schost-1 Ok

例 5-40 CCR からディスク構成を読み直す

次の例では、デーモンが CCR からディスク構成を読み直し、監視されているディスクパスをそのステータスとともに出力します。

    # cldevice monitor +
    # cldevice status
    Device Instance              Node               Status
    ---------------              ----               ------
    /dev/did/rdsk/d1             schost-1           Ok
    /dev/did/rdsk/d2             schost-1           Ok
    /dev/did/rdsk/d3             schost-1           Ok
                                  schost-2          Ok
    /dev/did/rdsk/d4             schost-1           Ok
                                  schost-2          Ok
    /dev/did/rdsk/d5             schost-1           Ok
                                  schost-2          Ok
    /dev/did/rdsk/d6             schost-1           Ok
                                  schost-2          Ok
    /dev/did/rdsk/d7             schost-2           Ok
    /dev/did/rdsk/d8             schost-2           Ok

## ディスクパスの監視を解除する方法

ディスクパスの監視を解除する場合は、この手順を使用します。

| 注意 - DPM は、Sun Cluster 3.1 10/03 ソフトウェアより前にリリースされたバージョンを実行するノードではサポートされません。ローリングアップグレードの進行中には DPM コマンドを使用しないでください。すべてのノードがアップグレードされたあとで、DPM コマンドを使用するためにノードをオンラインにする必要があります。

`phys-schost#` プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

1. クラスタの任意のノードで、スーパーユーザーになるか、RBAC の承認 `solaris.cluster.modify` を提供する役割になります。
2. 監視を解除するディスクパスの状態を調べます。

       # cldevice status device

3. 各ノードで、適切なディスクパスの監視を解除します。

       # cldevice unmonitor -n node disk

例 5-41 ディスクパスの監視解除

次の例では、`schost-2:/dev/did/rdsk/d1` ディスクパスの監視を解除し、クラスタ全体のディスクパスの一覧とそのステータスを出力します。

    # cldevice unmonitor -n schost2 /dev/did/rdsk/d1
    # cldevice status -n schost2 /dev/did/rdsk/d1

    Device Instance              Node               Status
    ---------------              ----               ------
    /dev/did/rdsk/d1             schost-2           Unmonitored

## 障害のあるディスクパスを表示する方法

クラスタに障害のあるディスクパスを表示する場合は、次の手順を使用します。

| 注意 - DPM は、Sun Cluster 3.1 10/03 ソフトウェアより前にリリースされたバージョンを実行するノードではサポートされません。ローリングアップグレードの進行中には DPM コマンドを使用しないでください。すべてのノードがアップグレードされたあとで、DPM コマンドを使用するためにノードをオンラインにする必要があります。

1. クラスタ内にある任意のノード上でスーパーユーザーになります。
2. 全クラスタ内の障害のあるディスクパスを表示します。

       # cldevice status -s fail

例 5-42 障害のあるディスクパスを表示する

次の例では、全クラスタ内の障害のあるディスクパスを表示します。

    # cldevice status -s fail

    Device Instance               Node              Status
    ---------------               ----              ------
    dev/did/dsk/d4                phys-schost-1     fail

## ディスクパスのステータスエラーを解決する方法

次のイベントが発生すると、DPM が障害の発生したパスがオンラインになっても、そのパスのステータスを更新しない可能性があります。

- 監視対象パスの障害によって、ノードがリブートする。

- リブートしたノードがオンラインに戻るまで、監視対象の DID パスの下のデバイスがオンラインに戻らない。

ブート時に監視対象の DID デバイスを利用できず、このため DID インスタンスが DID ドライバにアップロードされないため、不正なディスクパスステータスが報告されます。このような状態が発生する場合は、手動で DID 情報を更新します。

1. 1 つのノードからグローバルデバイス名前空間を更新します。

       # cldevice populate

2. 次の手順に進む前に、各ノードでコマンド処理が完了していることを確認します。

   このコマンドは、1 つのノードからのみ実行されても、リモートからすべてのノードで実行されます。コマンドが処理を終了したかどうかを確認するには、クラスタの各ノードで次のコマンドを実行します。

       # ps -ef | grep cldevice populate

3. DPM ポーリングタイムフレーム内で障害の発生したディスクパスのステータスが OK になっていることを確認します。

       # cldevice status disk-device

       Device Instance               Node                  Status
       ---------------               ----                  ------
       dev/did/dsk/dN                phys-schost-1         Ok

## ファイルからディスクパスを監視する方法

ファイルを使ってディスクパスを監視したり、その監視を解除する場合は、次の手順を使用します。

ファイルを使用してクラスタ構成を変更するには、まず現在の構成をエクスポートします。このエクスポート操作により XML ファイルが作成されます。このファイルは、変更する構成項目を設定するために修正できます。この手順では、このプロセス全体を説明します。

| 注意 - DPM は、Sun Cluster 3.1 10/03 ソフトウェアより前にリリースされたバージョンを実行するノードではサポートされません。ローリングアップグレードの進行中には DPM コマンドを使用しないでください。すべてのノードがアップグレードされたあとで、DPM コマンドを使用するためにノードをオンラインにする必要があります。

`phys-schost#` プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

1. クラスタの任意のノードで、スーパーユーザーになるか、RBAC の承認 `solaris.cluster.modify` を提供する役割になります。
2. デバイス構成を XML ファイルにエクスポートします。

       # cldevice export -o configurationfile

   `-o` configurationfile

     XML ファイルのファイル名を指定します。

3. デバイスパスが監視されるよう、構成ファイルを変更します。

   監視するデバイスパスを検索し、`monitored` 属性を `true` に設定します。

4. デバイスパスを監視します。

       # cldevice monitor -i configurationfile

   `-i` configurationfile

     変更された XML ファイルのファイル名を指定します。

5. この時点でデバイスパスが監視されていることを確認します。

       # cldevice status

例 5-43 ファイルからディスクパスを監視する

次の例では、ノード `phys-schost–2` とデバイス `d3` の間のデバイスパスが、XML ファイルを使用することによって監視されています。

最初に、現在のクラスタ構成をエクスポートします。

    # cldevice export -o deviceconfig

`deviceconfig` XML ファイルは、`phys-schost–2` と `d3` の間のパスが現在は監視されていないことを示しています。

    <?xml version="1.0"?>
    <!DOCTYPE cluster SYSTEM "/usr/cluster/lib/xml/cluster.dtd">
    <cluster name="brave_clus">
    .
    .
    .
       <deviceList readonly="true">
        <device name="d3" ctd="c1t8d0">
          <devicePath nodeRef="phys-schost-1" monitored="true"/>
          <devicePath nodeRef="phys-schost-2" monitored="false"/>
        </device>
      </deviceList>
    </cluster>

そのパスを監視するには、次のように、監視される `attribute` を `true` に設定します。

    <?xml version="1.0"?>
    <!DOCTYPE cluster SYSTEM "/usr/cluster/lib/xml/cluster.dtd">
    <cluster name="brave_clus">
    .
    .
    .
       <deviceList readonly="true">
        <device name="d3" ctd="c1t8d0">
          <devicePath nodeRef="phys-schost-1" monitored="true"/>
          <devicePath nodeRef="phys-schost-2" monitored="true"/>
        </device>
      </deviceList>
    </cluster>

`cldevice` コマンドを使用して、ファイルを読み込み、監視を有効にします。

    # cldevice monitor -i deviceconfig

`cldevice` コマンドを使用して、この時点でデバイスが監視されていることを確認します。

    # cldevice status

参照

クラスタ構成のエクスポート、および結果の XML ファイルを使用したクラスタ構成の設定の詳細は、`cluster`(1CL) および `clconfiguration`(5CL) のマニュアルページを参照してください。

## 監視しているすべての共有ディスクパスが失敗したときのノードの自動リブートを有効にする方法

この機能を有効にすると、次の条件が満たされる場合、ノードは自動的にリブートします。

- ノード上ですべての監視対象の共有ディスクパスが失敗した。

- 監視対象のディスクのうち、少なくとも 1 つに、クラスタ内の異なるノードからアクセスできる。`scdpm` デーモンは、プライベートインターコネクトを使用して、ディスクがクラスタ内の別のノードからアクセス可能かどうかをチェックします。プライベートインターコネクトが無効な場合、`scdpm` デーモンは別のノードからディスクのステータスを取得できません。

ノードが再起動すると、そのノード上でマスターされているすべてのリソースグループとデバイスグループが別のノード上で再起動します。

ノードが自動リブートしたあと、ノード上のすべての監視対象共有ディスクパスがアクセス不能のままである場合、そのノードは再び自動リブートしません。しかし、ノードがリブートしたが失敗したあとに、利用可能になったディスクパスがある場合、そのノードは再び自動リブートします。

`reboot_on_path_failure` プロパティーを有効にすると、ローカルディスクパスの状態は、ノードのリブートが必要かどうか決定するときには考慮されません。監視された共有ディスクのみが影響を受けます。

1. クラスタ内の任意のノードで、スーパーユーザーになるか、`solaris.cluster.modify` RBAC の承認を提供する役割になります。
2. クラスタのすべてのノードに対して、監視共有ディスクパスがすべて失敗したときの、ノードの自動リブートを有効にします。

       # clnode set -p reboot_on_path_failure=enabled +

## すべての監視共有ディスクパスが失敗した場合にノードの自動リブートを無効にする方法

この機能を無効にすると、あるノード上のすべての監視共有ディスクパスに障害が発生しても、ノードは自動的にはリブートしません。

1. クラスタ内の任意のノードで、スーパーユーザーになるか、`solaris.cluster.modify` RBAC の承認を提供する役割になります。
2. クラスタ内のすべてのノードに対して、ノードへのすべての監視共有ディスクパスに障害が発生した場合の、ノードの自動リブートを無効にします。

       # clnode set -p reboot_on_path_failure=disabled +

Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 著作権について |