Sun Cluster のシステム管理 (Solaris OS 版)

ディスクパス監視の管理

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


注 –

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


表 5–6 作業マップ: ディスクパス監視の管理

作業 

参照先 

ディスクパスを監視します。 

「ディスクパスを監視する」

ディスクパスの監視を解除します。 

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

あるノードに対する障害のあるディスクパスのステータスを表示します。 

「障害のあるディスクパスを表示する」

ファイルからディスクパスを監視します。 

「ファイルからディスクパスを監視する」

監視しているすべての共有ディスクパスが失敗したときのノードの自動再起動を有効化または無効化します。 

「監視しているすべての共有ディスクパスが失敗したときのノードの自動再起動を有効にする」

「すべての監視共有ディスクパスが失敗した場合にノードの自動再起動を無効にする」

不正なディスクパス状態を解決します。起動時に監視対象の DID デバイスを利用できず、DID インスタンスが DID ドライバにアップロードされない場合、不正なディスクパス状態が報告されることがあります。  

「ディスクパスの状態エラーを解決する」

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

Procedureディスクパスを監視する

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


注意 – 注意 –

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


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

この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短縮形については、付録 B Sun Cluster オブジェクト指向コマンドを参照してください。

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

  2. ディスクパスを監視します。


    # cldevice monitor -n node disk
    
  3. ディスクパスが監視されているか確認します。


    # cldevice status device
    

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

次の例では、単一ノードから 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–46 すべてのノードのディスクパスを監視

次の例では、すべてのノードから 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–47 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

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

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


注意 – 注意 –

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


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

この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短縮形については、付録 B Sun Cluster オブジェクト指向コマンドを参照してください。

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

  2. 監視を解除するディスクパスの状態を調べます。


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


    # cldevice unmonitor -n node disk
    

例 5–48 ディスクパスの監視解除

次の例では、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

Procedure障害のあるディスクパスを表示する

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


注意 – 注意 –

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


  1. クラスタ内にある任意のノード上でスーパーユーザーになります。

  2. 全クラスタ内の障害のあるディスクパスを表示します。


    # cldevice status -s fail
    

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

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


# cldevice status -s fail
     
Device Instance               Node              Status
---------------               ----              ------
dev/did/dsk/d4                phys-schost-1     fail

Procedureディスクパスの状態エラーを解決する

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

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

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


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

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


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


    # cldevice status disk-device
    
    Device Instance               Node                  Status
    ---------------               ----                  ------
    dev/did/dsk/dN                phys-schost-1         Ok

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

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

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


注意 – 注意 –

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


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

この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短縮形については、付録 B Sun 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–50 ファイルからディスクパスを監視する

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

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


# cldevice export -o deviceconfig

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


<?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>

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


<?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) のマニュアルページを参照してください。

Procedure監視しているすべての共有ディスクパスが失敗したときのノードの自動再起動を有効にする

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

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

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

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

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

  2. クラスタのすべてのノードに対して、監視共有ディスクパスがすべて失敗したときの、ノードの自動再起動を有効にします。


    # clnode set -p reboot_on_path_failure=enabled +
    

Procedureすべての監視共有ディスクパスが失敗した場合にノードの自動再起動を無効にする

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

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

  2. クラスタ内のすべてのノードに対して、ノードへのすべての監視共有ディスクパスに障害が発生した場合の、ノードの自動再起動を無効にします。


    # clnode set -p reboot_on_path_failure=disabled +