Sun Cluster 3.1 Data Service for Network File System (NFS) ガイド

Sun Cluster HA for Network File System (NFS) のインストールと構成

この章では、Sun Cluster HA for Network File System (NFS) を Sun Cluster ノードにインストールして構成するための手順を説明します。

この章の内容は次のとおりです。

Sun Cluster HA for NFS は、フェイルオーバーデータサービスとして構成する必要があります。データサービス、リソースグループ、リソース、およびその他の関連トピックについての一般的な情報は、『Sun Cluster 3.1 データサービスの計画と管理』の「Sun Cluster データサービスの計画」および『Sun Cluster 3.1 の概念』を参照してください。


注 –

このデータサービスのインストールと構成には、SunPlex Manager を使用できます。詳細については、SunPlex Manager のオンラインヘルプを参照してください。


Sun Cluster HA for NFS のインストールと構成を行う前に、『Sun Cluster 3.1 ご使用にあたって』にあるワークシートを使用して、リソースとリソースグループを計画してください。

データサービスの制御下に置かれる NFS マウントポイントは、これらのファイルシステムを持つディスクデバイスグループをマスターできるすべてのノードで同じである必要があります。


注意 – 注意 –

VERITAS Volume Manager を使用すると、NFS フェイルオーバーの実行時にクライアントで発生する「stale file handle (無効なファイルハンドル)」エラーを防止できます。vxio ドライバの疑似デバイスメジャー番号が、すべてのクラスタノードで同一であることを確認してください。この番号は、インストールを完了した後、/etc/name_to_major ファイルに記述されています。


Sun Cluster HA for NFS のインストールと構成

インストール作業と構成作業を説明している節は次のとおりです。

表 1–1 作業マップ: Sun Cluster HA for NFS のインストールと構成

作業 

参照先 

Sun Cluster HA for NFS パッケージのインストール 

Sun Cluster HA for NFS パッケージのインストール

Sun Cluster HA for NFS のセットアップと構成 

Sun Cluster HA for NFS のインストールと構成

リソース拡張プロパティの構成 

Sun Cluster HA for NFS 拡張プロパティの構成

障害モニターの情報の表示 

Sun Cluster HA for NFS 障害モニター

Sun Cluster HA for NFS パッケージのインストール

Sun Cluster の初期インストール時に Sun Cluster HA for Network File System (NFS) パッケージをインストールしなかった場合は、この手順を実行してパッケージをインストールしてください。次の手順は、Sun Cluster HA for Network File System (NFS) パッケージをインストールする各クラスタノードで実行します。この手順の実行には、Sun Cluster Agents CD-ROM が必要です。

同時に複数のデータサービスをインストールする場合は、『Sun Cluster 3.1 10/03 ソフトウェアのインストール』の「ソフトウェアのインストール」の手順を実行してください。

次のいずれかのインストールツールを使用して、Sun Cluster HA for Network File System (NFS) パッケージをインストールします。


注 –

Web Start プログラムは、Sun Cluster 3.1 データサービス 10/03 以前のリリースでは利用できません。


Web Start プログラムを使用して Sun Cluster HA for NFS パッケージをインストールする

Web Start プログラムは、コマンド行インタフェース (CLI) またはグラフィカルユーザーインタフェース (GUI) を使用して実行できます。 CLI と GUI では、指示の内容と順序がほぼ同じです。Web Start プログラムの詳細については、installer(1M) のマニュアルページを参照してください。

  1. Sun Cluster HA for Network File System (NFS) パッケージをインストールするクラスタノードで、スーパーユーザーになります。

  2. (省略可能) GUI を使用して Web Start プログラムを実行する予定の場合は、DISPLAY 環境変数が設定されていることを確認してください。

  3. Sun Cluster Agents CD-ROM を CD-ROM ドライブに挿入します。

    ボリューム管理デーモンの vold(1M) が実行中で、CD-ROM デバイスを管理するように構成されている場合、デーモンによって自動的に CD-ROM が /cdrom/scdataservices_3_1_vb ディレクトリにマウントされます。

  4. CD-ROM の Sun Cluster HA for Network File System (NFS) コンポーネントディレクトリに移動します。

    Sun Cluster HA for Network File System (NFS) データサービス用の Web Start プログラムは、このディレクトリにあります。


    # cd /cdrom/scdataservices_3_1_vb/\
    components/SunCluster_HA_NFS_3.1
    
  5. Web Start プログラムを起動します。


    # ./installer
    
  6. プロンプトが表示されたら、インストールの種類を選択します。

    • C ロケールのみをインストールする場合は、一般 (Typical) を選択します。

    • ほかのロケールをインストールする場合は、カスタム (Custom) を選択します。

  7. 画面上の指示に従って、Sun Cluster HA for Network File System (NFS) パッケージをノードにインストールします。

    インストールを終了すると、Web Start プログラムはインストールの要約を表示します。この要約から、インストール時に Web Start プログラムによって作成されたログを表示できます。これらの記録は、/var/sadm/install/logs ディレクトリにあります。

  8. Web Start プログラムを終了します。

  9. Sun Cluster Agents CD-ROM を CD-ROM ドライブから取り出します。

    1. CD-ROM が使用中にならないように、CD-ROM 上でないディレクトリに移動します。

    2. CD-ROM を取り出します。


      # eject cdrom
      

次に進む手順

Sun Cluster HA for NFS のインストールと構成を参照して、Sun Cluster HA for NFS を登録し、このデータサービス用にクラスタを構成します。

scinstall ユーティリティーを使用して Sun Cluster HA for NFS パッケージをインストールする

  1. Sun Cluster Agents CD-ROM を CD-ROM ドライブに挿入します。

  2. オプションは指定せずに、scinstall ユーティリティーを実行します。

    scinstall ユーティリティーが対話型モードで起動します。

  3. メニューオプション「新しいデータサービスのサポートをこのクラスタノードに追加」を選択します。

    scinstall ユーティリティーにより、ほかの情報を入力するためのプロンプトが表示されます。

  4. Sun Cluster Agents CD-ROM のパスを指定します。

    ユーティリティーはこの CD をデータサービス CD-ROM として示します。

  5. インストールするデータサービスを指定します。

    選択したデータサービスが scinstall ユーティリティーによって示され、この選択内容の確認が求められます。

  6. scinstall ユーティリティーを終了します。

  7. ドライブから CD を取り出します。

次に進む手順

Sun Cluster HA for NFS のインストールと構成を参照して、Sun Cluster HA for NFS を登録し、このデータサービス用にクラスタを構成します。

Sun Cluster HA for NFS のインストールと構成

この手順では、scrgadm(1M) コマンドを使って Sun Cluster HA for NFS の登録と構成を行う方法を説明します。


注 –

その他のオプションでもデータサービスは登録および構成できます。これらのオプションについては、『Sun Cluster 3.1 データサービスの計画と管理』の「データサービスリソース管理用ツール」を参照してください。


Sun Cluster HA for NFS の登録と構成を行う前に、次のコマンドを実行してSun Cluster HA for NFS パッケージの SUNWscnfs, がクラスタにインストールされていることを確認してください。


# pkginfo -l SUNWscnfs

パッケージがインストールされていない場合は、Sun Cluster HA for NFS パッケージのインストールを参照してください。

Sun Cluster HA for NFS を登録して構成する

  1. クラスタメンバー上でスーパーユーザーになります。

  2. すべてのクラスタノードがオンラインであることを確認します。


    # scstat -n
    
  3. Pathprefix ディレクトリを作成します。

    Pathprefix ディレクトリは、Sun Cluster HA for NFS が管理情報とステータス情報の保持に使用するクラスタファイルシステム上に配置されます。

    ユーザーは任意のディレクトリを Pathprefix として指定できます。ただし、作成するリソースグループごとに admin-dir ディレクトリを手動で作成する必要があります。たとえば、/global/nfs というディレクトリを作成します。


    # mkdir -p /global/admin-dir
    
  4. NFS リソースを含むフェイルオーバーリソースグループを作成します。


    # scrgadm -a -g resource-group -y Pathprefix=/global/admin-dir [-h nodelist]
    -a

    新しい構成を追加することを指定します。

    -g resource-group

    フェイルオーバーリソースグループを指定します。

    -y Pathprefix =path

    Sun Cluster HA for NFS が管理情報とステータス情報の保持に使用する、クラスタファイルシステム上のディレクトリを指定します。

    [-h nodelist]

    潜在マスターを識別する物理ノード名または ID をコンマで区切ったリストで指定します (省略可能)。この順序で、Resource Group Manager (RGM) は、フェイルオーバー時の主ノードを決定します。

  5. すべての論理ホスト名リソースがネームサービスデータベースに追加されているかどうかを確認します。

    ネームサービスの検索が原因で障害が発生するのを防ぐために、サーバーおよびクライアントの /etc/inet/hosts ファイルに、すべての論理ホスト名が登録されていることを確認してください。

  6. クラスタノードの /etc/nsswitch.conf ファイルのネームサービスマッピングは、rpc 検索で NIS または NIS+ にアクセスする前に、最初にローカルファイルを検査するように構成します。

    このように構成することで、パブリックネットワークまたはネームサービスが利用できないとき、rpc 検索でのタイミング関連エラーを防止できます。

  7. 名前をローカルで解決する際、ホストが最初に NIS/DNS に問い合わせを行わず、代わりに成功した状態を直ちに返すように /etc/nsswitch.conf のホストエントリを変更します。

    このように変更することで、パブリックネットワークの障害時に HA-NFS は正しくフェイルオーバーできるようになります。


    # hosts: cluster files [SUCCESS=return] nis
    # rpc: files nis
    
  8. (省略可能) nfsd または lockd 起動オプションをカスタマイズします。

    1. nfsd オプションをカスタマイズするには、各クラスタノードで /etc/init.d/nfs.server ファイルを開きます。/usr/lib/nfs/nfsdで開始されるコマンド行を見つけて、希望する引数を追加します。

    2. lockd 起動オプションをカスタマイズするには、各クラスタノードで /etc/init.d/nfs.client ファイルを開きます。 /usr/lib/nfs/lockd で開始されるコマンド行を見つけて、希望する引数を追加します。


    注 –

    コマンド行は 1 行に収まるようにしてください。コマンド行を 2 行以上に分けることはできません。追加する引数は、nfsd(1M) および lockd(1M) のマニュアルページで説明されている有効なオプションでなければなりません。


  9. 希望する論理ホスト名リソースをフェイルオーバーリソースグループに追加します。

    この手順を行うには論理ホスト名リソースを設定する必要があります。Sun Cluster HA for NFS で使用する論理ホスト名が SharedAddress リソースタイプになることはありません


    # scrgadm -a -L -g resource-group -l logical-hostname, … [-n netiflist]
    -a

    新しい構成を追加することを指定します。

    -L -g resource-group

    論理ホスト名リソースを配置するリソースグループを指定します。

    -l logical-hostname, …

    追加する論理ホスト名リソースを指定します。

    -n netiflist

    各ノード上にある IP Networking Multipathing グループをコンマで区切ったリストで指定します (省略可能)。netiflist 内の各要素は、netif@node の書式にする必要があります。 netif は、sc_ipmp0 のような IP Networking Multipathing グループ名で指定できます。ノードは、sc_ipmp0@1 または sc_ipmp@phys-schost-1 のような、ノード名またはノード ID で識別できます。


    注 –

    現バージョンの Sun Cluster では、netif にアダプタ名を使用できません。


  10. 任意のクラスタノードから、NFS 構成ファイル用のディレクトリ構造を作成します。

    手順 4で、Pathprefix プロパティで指定したディレクトリの下に、管理サブディレクトリ (例: /global/nfs/SUNW.nfs) を作成します。


    # mkdir Pathprefix/SUNW.nfs
  11. 手順 10で作成した SUNW.nfs ディレクトリに dfstab.resource ファイルを作成して、共有オプションを設定します。

    1. Pathprefix/SUNW.nfs/dfstab .resource ファイルを作成します。

      このファイルには、共有パス名が指定された一連の share コマンドが入ります。共有パスは、クラスタファイルシステム上のサブディレクトリになります。


      注 –

      手順 13で作成する予定の NFS リソースを識別する resource 名接尾辞を選択します。リソース名は、そのリソースが実行するタスクを表す名前にします。たとえば、ユーザーのホームディレクトリを共有する NFS には、user-nfs-home という名前にします。


    2. 共有されるように作成した各パスに対し、共有オプションを設定します。

      このファイルで使用する書式は、/etc/dfs/dfstab ファイルで使用される書式と同じです。


      share [-F nfs] [-o] specific_options [-d “description”] pathname 
      
      -F nfs

      ファイルシステムタイプを nfs に指定します。

      -o specific_options

      すべてのクライアントに読み取りと書き込みのアクセス権を付与します。オプションについては、share(1M) のマニュアルページを参照してください。Sun Cluster の rw オプションを設定します。

      -d description

      追加するファイルシステムについての説明です。

      pathname

      共有するファイルシステムを指定します。

    共有オプションを設定する場合、以下の点を考慮してください。

    • 共有オプションを構成するときは、root オプションの使用と、rorw オプションを組み合わせて使用することは避けてください。

    • クラスタインターコネクト上のホスト名にアクセス権を付与しないでください。

      Sun Cluster HA for NFS による監視が十分に機能できるように、読み取りと書き込みの両方のアクセス権をすべてのクラスタノードと論理ホストに付与してください。ただし、ファイルシステムへの書き込みアクセスを制限したり、ファイルシステム全体を読み取り専用にすることはできます。この場合、Sun Cluster HA for NFS 障害モニターは、書き込みアクセス権なしで監視を実行できます。

    • share コマンドでクライアントリストを指定する場合は、クラスタが接続するすべてのパブリックネットワーク上のすべてのクライアント用のホスト名のほかに、そのクラスタと関連付けられるすべての物理ホスト名と論理ホスト名を含めてください。

    • share コマンドで、個々のホスト名を使用する代わりにネットグループを使用する場合は、これらすべてのクラスタホスト名を適切なネットグループに追加してください。

    share -o rw コマンドは、Sun Cluster ソフトウェアが使用するホスト名を含むすべてのクライアントに対する書き込みアクセス権を付与します。このコマンドにより、 Sun Cluster HA for NFS 障害モニターの機能を最大限に有効利用できます。詳細は、各マニュアルページを参照してください。

    • dfstab(4)

    • share(1M)

    • share_nfs(1M)

  12. NFS リソースタイプを登録します。


    # scrgadm -a -t resource-type
    
    -a -t resource-type

    指定したリソースタイプを追加します。Sun Cluster HA for NFS の場合、リソースタイプは SUNW.nfs です。

  13. NFS リソースをフェイルオーバーリソースグループに作成します。


    # scrgadm -a -j resource -g resource-group -t resource-type
    
    -a

    構成を追加することを指定します。

    -j resource

    手順 11 で定義した、追加するリソースの名前を指定します。任意の名前を指定できますが、クラスタ内で一意にする必要があります。

    -g resource-group

    このリソースが追加される、作成済みのリソースグループの名前を指定します。

    -t resource-type

    このリソースが属するリソースタイプの名前を指定します。この名前は、登録されているリソースタイプの名前にする必要があります。

  14. scswitch(1M) コマンドを実行して次の作業を行います。

    • リソースと障害の監視を有効にします。

    • リソースグループを管理状態にします。

    • リソースグループをオンラインにします。


    # scswitch -Z -g resource-group
    

例 – Sun Cluster HA for NFS のセットアップと構成

次の例では、Sun Cluster HA for NFS を設定して構成する方法を示します。


(論理ホストリソースグループを作成し、NFS が使用する管理ファイルへのパスを指定する (Pathprefix))
# scrgadm -a -g resource-group-1 -y Pathprefix=/global/nfs
 
(論理ホスト名リソースを論理ホストリソースグループに追加する)
# scrgadm -a -L -g resource-group-1 -l schost-1
 
(Sun Cluster HA for NFS 構成ファイルを含むディレクトリ構造を作成する)
# mkdir -p /global/nfs/SUNW.nfs
 
(dfstab.resource ファイルを nfs/SUNW.nfs ディレクトリの下に作成し、共有オプションを設定する)
# share -F nfs -o rw=engineering -d “home dirs” nfs/SUNW.nfs
 
(NFS リソースタイプを登録する)
# scrgadm -a -t SUNW.nfs
 
(NFS リソースをリソースグループに作成する)
# sc
rgadm -a -j r-nfs -g resource-group-1 -t SUNW.nfs
 
(リソースとその監視を有効にして、リソースグループを管理する。リソースグループをオンライン状態に切り替える)
# scswitch -Z -g resource-group-1

次に進む手順

NFS ファイルシステムの共有オプションを設定するには、NFS ファイルシステムの共有オプションを変更するを参照してください。拡張プロパティの検討や設定については、Sun Cluster HA for NFS 拡張プロパティの構成を参照してください。

NFS ファイルシステムの共有オプションを変更する

share -o コマンドで rwrw = roro = オプションを使用する場合は、すべての物理ホストまたはすべての Sun Cluster サーバーと関連付けられる netgroups にアクセス権を付与してください。NFS 障害モニターが効果的に動作します。

share(1M) コマンドで、netgroups を使用する場合は、Sun Cluster のすべてのホスト名を適切な netgroup に追加してください。理想的には、読み取りと書き込みの両方のアクセス権をすべての Sun Cluster ホスト名に付与し、NFS 障害検証機能が正常に動作するようにします。


注 –

共有オプションを変更する前に、share_nfs(1M) のマニュアルページを参照し、有効なオプションの組み合わせを理解してください。


  1. クラスタノード上にインストールするクラスタノード上でスーパーユーザーになります。

  2. NFS リソースの障害モニターを無効にします。


    # scswitch -n -M -j resource
    
    -M

    リソース障害モニターを無効にします。

  3. 新しい share オプションをテストします。

    1. 新しい共有オプションで dfstab.resource ファイルを編集する前に、新しい share コマンドを実行して、オプションの組み合わせが正しいことを確認してください。


      # share -F nfs [-o] specific_options [-d “description”] pathname
      
      -F nfs

      ファイルシステムタイプを NFS に指定します。

      -o specific_options

      オプションを指定します。読み取りと書き込みの両方のアクセス権をすべてのクライアントに付与する rw の使用を推奨します。

      -d description

      追加するファイルシステムについての説明です。

      pathname

      共有するファイルシステムを指定します。

    2. 新しい share コマンドの実行に失敗した場合は、直ちに以前のオプションを使用してもう一度 share コマンドを実行してください。新しい share コマンドが正しく実行された場合は、手順 4に進んでください。

  4. 新しい共有オプションを使用して、dfstab.resource ファイルを編集します。

    1. dfstab.resource ファイルからパスを削除する場合は、以下の手順を順に実行してください。

      1. unshare (1M) コマンドを実行します。

      2. dfstab.resource ファイルから、削除したいパスの share コマンドを削除します。


      # unshare [-F nfs] [-o specific_options] pathname
      # vi dfstab.resource
      
      -F nfs

      ファイルシステムタイプを NFS に指定します。

      -o specific_options

      NFS ファイルシステム固有のオプションを指定します。

      pathname

      無効にするファイルシステムを指定します。

    2. dfstab.resource ファイルにパスを追加する場合、またはこのファイルの既存パスを変更する場合は、マウントポイントが正しいことを確認してから、dfstab.resource ファイルを編集します。


    注 –

    このファイルで使用する書式は、/etc/dfs/dfstab ファイルで使用する書式と同じです。各行は、share コマンドから成ります。


  5. NFS リソースで障害モニターを有効にします。


    # scswitch -e -M -j resource
    

Sun Cluster HA for NFS メソッドタイムアウトを調整する

Sun Cluster HA for NFS メソッドが終了するために要する時間は、dfstab.resource ファイルに含まれる、リソースによって共有されるパスの数に依存します。これらのメソッドのデフォルトのタイムアウト値は、300 秒です。

一般には、共有される各パスのメソッドタイムアウト値に 10 秒を割り当てます。デフォルトのタイムアウトは 30 の共有パスを処理するように設計されています。

共有パスの数が 30 を超える場合は、次のメソッドのタイムアウト値を更新してください。

Prenet_start_timeout Postnet_stop_timeout Monitor_Start_timeout
Start_timeout Validate_timeout Monitor_Stop_timeout
Stop_timeout Update_timeout Monitor_Check_timeout

メソッドタイムアウトを変更するには、次のように、scrgadm--c オプションを使用します。


% scrgadm -c -j resource -y Prenet_start_timeout=500

SUNW.HAStoragePlus リソースタイプを構成する

SUNW.HAStoragePlus リソースタイプは、Sun Cluster 3.0 5/02 で導入されました。 新しいリソースタイプは、SUNW.HAStorage と同じ機能を実行し、HA ストレージと Sun Cluster HA for NFS との間のアクションを同期します。 SUNW.HAStoragePlus には、ローカルファイルシステムを高可用性にする追加機能があります。 Sun Cluster HA for NFS は、フェイルオーバー機能を持ちディスク集約型であるため、SUNW.HAStoragePlus リソースタイプを設定する必要があります。

背景情報については、SUNW.HAStoragePlus(5) のマニュアルページ、および『 Sun Cluster 3.1 データサービスの計画と管理』の「 リソースグループとディスク装置グループとの関係」を参照してください。手順については、『Sun Cluster 3.1 データサービスの計画と管理』の「リソースグループとディスク装置グループとの間の起動を同期させる」を参照してください。5/02 以前の Sun Cluster 3.0 バージョンを使用している場合は、SUNW.HAStoragePlus ではなく SUNW.HAStorage を設定する必要があります。手順については、『Sun Cluster 3.1 データサービスの計画と管理』の「リソースグループとディスク装置グループとの間の起動を同期させる」を参照してください。

Sun Cluster HA for NFS 拡張プロパティの構成

通常、拡張プロパティは、NFS リソースを作成するときにコマンド行から scrgadm -x parameter=value を実行して構成します。『 Sun Cluster 3.1 データサービスの計画と管理』の「データサービスリソースの管理」で説明されている手順を使用して、これらのプロパティをあとで構成することもできます。Sun Cluster HA for NFS に拡張プロパティを設定する必要はありません。 すべての Sun Cluster プロパティの詳細については、『Sun Cluster 3.1 データサービスの計画と管理』の「標準プロパティ」を参照してください。

Sun Cluster HA for NFS に構成できる拡張プロパティについては、表 1–2を参照してください。拡張プロパティによっては、動的に更新できるものもあります。ただし、それ以外の拡張プロパティは、リソースを作成するときにしか更新できません。「調整可能」エントリは、いつプロパティを更新できるかを示します。

表 1–2 Sun Cluster HA for NFS 拡張プロパティ

名前/データタイプ 

デフォルト値 

Lockd_nullrpc_timeout (整数)

lockd を検証するときに使用するタイムアウト値 (秒)。

 

デフォルト:120

範囲: 最小 = 60

調整:任意の時点

Monitor_retry_count (整数)

Monitor_retry_ interval プロパティで指定された時間の範囲内に、プロセスモニター機能 (PMF) が障害モニターを再起動する回数。このプロパティは、障害モニターの再起動について制御するのであって、リソースの再起動を制御するわけではありません。リソースの再起動は、システム定義プロパティの Retry_interval および Retry_count によって制御されます。これらのプロパティについては、scrgadm(1M) のマニュアルページを参照してください。

 

初期値: 4

範囲: 0 – 2, 147, 483, 641

–1 は、再試行の数が無限であることを示す。 

調整: 任意の時点

Monitor_retry_interval (整数)

障害モニターの失敗がカウントされる期間 (分)。この期間内に、障害モニターの失敗の数が、拡張プロパティ Monitor_retry_count で指定した値を超えた場合、PMF は障害モニターを再起動しません。

 

初期値: 2

範囲: 0 – 2, 147, 483, 641

–1 は、再試行の間隔が無限であることを示す。  

調整: 任意の時点

Mountd_nullrpc_restart (ブール値)

ヌル rpc 呼び出しに失敗したときに mountd を再起動するかどうかを指定するブール値。

 

初期値: True

範囲: なし

調整:任意の時点

Mountd_ nullrpc_ timeout (整数)

mountd の検証時に使用するタイムアウト値 (秒)。

 

デフォルト:120

範囲: 最小 = 60

調整:任意の時点

Nfsd_ nullrpc_ restart (ブール値)

ヌルの rpc 呼び出しに失敗したときに nfsd を再起動するかどうかを指定するブール値。

 

初期値: False

範囲: なし

調整:任意の時点

Nfsd_ nullrpc_ timeout (整数)

nfsd の検証時に使用するタイムアウト値 (秒)。

 

デフォルト:120

範囲: 最小 = 60

調整: 任意の時点

Rpcbind_ nullrpc_ reboot (ブール値)

rpcbind でのヌルの rpc 呼び出しに失敗したときに、システムを再起動するかどうかを指定するブール値。

 

デフォルト: False

範囲: なし

調整: 任意の時点

Rpcbind_ nullrpc_ timeout (整数)

rpcbind の検証時に使用するタイムアウト値 (秒)。

 

デフォルト:120

範囲: 最小 = 60

調整: 任意の時点

Statd_ nullrpc_ timeout (整数)

statd の検証時に使用するタイムアウト値 (秒)。

 

初期値: 120

範囲: 最小 = 60

調整:任意の時点

Sun Cluster HA for NFS 障害モニター

Sun Cluster HA for NFS の障害モニターには、次の 2 つの機能があります。

障害モニターの起動

最初に、NFS リソースの MONITOR_START メソッドは、NFS システム障害モニターを起動します。この起動メソッドは、最初に NFS システム障害モニターの nfs_daemons_probe が、プロセスモニターデーモンの rpc.pmfd の下ですでに実行されているかどうかを調べます。 NFS システム障害モニターが動作していない場合、この起動メソッドはプロセスモニターの制御下で nfs_daemons_probe プロセスを起動します。その後、同様に、プロセスモニターの制御下でリソース障害モニター (nfs_probe) を起動します。

障害モニターの停止

最初に、NFS リソースの MONITOR_STOP メソッドは、リソース障害モニターを停止します。その後、ほかの NFS リソース障害モニターがローカルノード上で実行されていない場合、NFS システム障害モニターも停止します。

NFS システム障害モニタープロセス

NFS システム障害モニターは、ローカルノード上で、rpcbind statdlockdnfsd、および mountd を検証します。検証は、プロセスの存在と、ヌル rpc 呼び出しに対する応答を調べることで行います。このモニターは、次の NFS 拡張プロパティを使用します。

Rpcbind_nullrpc_timeout Lockd_nullrpc_timeout
Nfsd_nullrpc_timeout Rpcbind_nullrpc_reboot
Mountd_nullrpc_timeout Nfsd_nullrpc_restart

Statd_nullrpc_timeout

Mountd_nullrpc_restart

拡張プロパティの検討や設定については、Sun Cluster HA for NFS 拡張プロパティの構成を参照してください。

各システム障害モニターの検証サイクルでは、次の作業が順に行われます。

  1. Cheap_probe_interval の間、休止します。

  2. rpcbind を検証します。

    プロセスが不意に終了したが、デーモンのウォームリスタートが実行中の場合、rpcbind は引き続きほかのデーモンを検証します。

    プロセスが不意に終了した場合、障害モニターはそのノードを再起動します。

    デーモンに対するヌル rpc 呼び出しが不意に終了し、 Rpcbind_nullrpc_reboot=TrueFailover_mode=HARD の場合、障害モニターはノードを再起動します。

  3. 最初に statd を検証し、次に lockd を検証します。

    statd または lockd が不意に終了した場合、システム障害モニターは両デーモンの再起動を試みます。

    これらのデーモンに対するヌル rpc 呼び出しが不意に終了した場合、障害モニターは syslog にメッセージを記録しますが、statdlockd を再起動しません。

  4. mountd を検証します。

    mountd が不意に終了した場合、障害モニターはデーモンの再起動を試みます。

    デーモンに対するヌル rpc 呼び出しが不意に終了し、 Mountd_nullrpc_restart= True の場合、クラスタファイルシステムが利用可能であれば、障害モニターは mountd の再起動を試みます。

  5. nfsd を検証します。

    nfsd が不意に終了した場合、障害モニターはデーモンの再起動を試みます。

    デーモンに対するヌル rpc 呼び出しが不意に終了し、Nfsd_nullrpc_restart=TRUE の場合、クラスタファイルシステムが利用可能であれば、障害モニターは nfsd の再起動を試みます。

rpcbind を除き、上記 NFS デーモンのうちいずれかが検証サイクル中の再起動に失敗した場合、NFS システム障害モニターは、次のサイクルの再開を再度試みます。すべての NFS デーモンが再起動され、状態が正常の場合には、リソースの状態は再び ONLINE に設定されます。モニターは、最後の Retry_interval での NFS デーモンの予期せぬ終了を追跡します。デーモンの予期せぬ終了の合計数が、 Retry_count に到達した場合、システム障害モニターは scha_control ギブオーバー (中止) を発行します。ギブオーバー呼び出しに失敗した場合、モニターは失敗した NFS デーモンの再起動を試みます。

各検証サイクルの最後で、すべてのデーモンが正常であれば、モニターは失敗の履歴を消去します。

NFS リソース障害モニタープロセス

リソース障害モニター検証を開始する前に、すべての共有パスが dfstab ファイルから読み取られ、メモリーに格納されます。各検証サイクルでは、パスに対して stat() を実行することで、各繰り返しですべての共有パスが検証されます。

各リソース障害モニターの障害検証では、次の作業が順に行われます。

  1. Thorough_probe_interval の間、休止します。

  2. 最後の読み取り以降に dfstab が変更されている場合は、メモリーをリフレッシュします。

    dfstab ファイルの読み取り中にエラーが発生した場合、リソースの状態は FAULTED に設定され、モニターは、現在の検証サイクル内のチェックの残りをとばします。

  3. パスに stat() を実行することで、すべての共有パスを各繰り返し検証します。

    問題のあるパスが見つかると、リソースの状態は FAULTED に設定されます。

  4. NFS デーモン (nfsdmountdlockdstatd) および rpcbind の存在を検証します。

  5. これらのデーモンのいずれかが停止している場合、リソースの状態は FAULTED に設定されます。

すべての共有パスが正しく、かつ NFS デーモンが存在する場合、検証サイクルの最後で、リソースの状態が ONLINE に設定されます。