PRIMECLUSTER が扱うリソースには以下のものがあります。
Cmdline リソース
Fsystem リソース
引継ぎネットワークリソース (Ipaddress) (SolarisおよびLinux 4.3A10以降 のみ)
プロシジャリソース
プロセス監視リソース(Solarisのみ)
Gds リソース
Gls リソース
各リソースを設定すると、リソースを監視するプロセス(ディテクタ)が自動的に設定されます。ディテクタは定周期または非同期にリソースの状態を監視し、その結果を PRIMECLUSTER に通知します。
ディテクタが通知するリソースの状態には、以下の種類があります。
状態 | 内容 |
---|---|
Online | リソースが動作中 |
Offline | リソースが動作していない |
Faulted | リソースに異常が発生した |
Warning | リソースは起動しているが一部故障中 |
Standby | リソースがホットスタンバイの状態 |
OfflineFault | リソースの故障が回復していない状態 |
各リソースに自動的に設定されたディテクタは、以下のようにリソースを監視します。
Cmdline リソース
Cmdline リソース は、start/stop スクリプトによる利用者プログラムの起動・停止と Check スクリプトによる利用者プログラムの監視を行う場合に使用します。
Fsystem リソース
Fsystem リソースは、ファイルシステムを userApplication の起動に合わせてマウントする場合に使用します。
ファイルシステムのマウント/アンマウント
アクセス異常(ケーブル抜けなど)のチェック
NFS ファイルシステムのネットワークの公開(*)
NFS ロック情報の引継ぎ(*)
(*) 本機能は Solaris でのみサポートしています。
Fsystem 用ディテクタの監視は複数のディテクタによって行われます。それぞれのディテクタとその監視方法、判定条件については、以下のとおりです。
ファイルシステムのマウント状態監視 (hvdet_gmount)
ファイルシステムのマウント状態とアクセス異常を監視するディテクタです。
約 10 秒の監視間隔(*)で以下のような処理を実行し、ファイルシステムを監視します。
ファイルシステムのマウント状態が /etc/vfstab.pcl (Solaris)、/etc/fstab.pcl(Linux) の定義に合わせマウントされていること。
マウント中はファイルシステムへの I/O が正常に行われること。
ファイルシステムの共用状態の監視 (hvdet_ckshare)
NFS サーバ機能を使用する場合に動作するディテクタです。
約 10 秒の監視間隔(*)で /etc/dfs/sharetab 内の情報を元に、ファイルシステムが共用されているかどうかを判断します。
(*) 約 10 秒の監視間隔はデフォルト値です。
ZFS の状態監視 (hvdet_zfs)
ZFS のストレージプールおよびデータセットの状態を監視するディテクタです。20 秒の監視間隔で以下の状態を判断します。
ストレージプールの状態
データセットのマウント状態
データセットの NFS 共有の状態
監視方法は以下のとおりです。
/etc/vfstab.pcl に定義されたストレージプールがインポートされていることを監視
ストレージプールの health プロパティの状態を監視(FAULTED または UNAVAIL の場合、ストレージプールの異常と判断)
データセットのmountpoint プロパティにマウントポイントが設定されている場合、マウントの状態を監視(データセットの mounted プロパティが yes のとき、マウントされていると判断)
データセットのmountpoint プロパティに legacy が設定されている場合、マウントの状態を監視(/etc/vfstab.pcl に定義されたマウントポイントにデータセットがマウントされていることを 、/etc/mnttab 内の情報を元に判断)
sharenfs プロパティまたは share.nfs プロパティに on が設定されているデータセットが NFS 共有されていることを監視(/etc/dfs/sharetab 内の情報を元にNFS共有の状態を判断)
引継ぎネットワーク(Ipaddress)リソース
引継ぎネットワーク(Ipaddress)リソースは、サーバ/クライアントシステムのように、業務 LAN を通じて、クラスタシステム上で動作するクラスタサービスと通信を行うシステムを構築する場合などに使用します。
IP Address のディテクタとその監視方法、判定条件については、以下のとおりです。
IP アドレスの up/down (hvdet_icmp)
引継ぎ IP アドレスの監視を行うディテクタです。
約 10 秒の監視間隔(*)で、該当インタフェースの状態が UP 状態となっているかどうかで引継ぎ IP アドレスが正常動作しているかを確認します。
また、PingHost の設定が行われていれば、該当インタフェースの状態に加えて、PingHost への ICMP パケットの送受信で該当 IP アドレスが正常動作しているかどうかを判断します。
(*) 約 10 秒の監視間隔はデフォルト値です。
状態遷移プロシジャリソース
状態遷移プロシジャリソースは、SafeCLUSTER 対応製品を PRIMECLUSTER 上で動作させる場合に使用します。
プロシジャ監視(hvdet_execproc)
リソースデータベースに記載されているステータスを元に、Online/Offline を判定します。本ディテクタは定周期ではなく、リソースデータベースにおけるステータスが変更した際に、非同期で RMS へ状態を通知します。
状態遷移プロシジャは Online 処理実行時において、状態遷移プロシジャが正常終了すると、そのステータスをリソースデータベースに記載し、Online 状態と判断します。Offline 処理実行時も同様に、状態遷移プロシジャが正常終了し、そのステータスをリソースデータベースに記載して Offline 状態と判定します。
プロセス監視リソース
プロセス監視リソースは、プロセスの生存状態を監視する場合に使用します。
プロセス監視のディテクタとその監視方法、判定条件については、以下のとおりです。
prmdデーモンによるユーザプロセスの生存監視 (hvdet_prmd)
ユーザプロセスの SIGCHLD や /proc ファイル情報を確認し、SIGCHLD の受信がない、および /proc に該当プロセスの情報が存在することで正常動作しているかを確認します。
Gds リソース
Gds リソースは、userApplication の起動・停止に合わせて、GDS で管理されるクラスに含まれる各ボリュームを起動・停止し、クラスおよび各ボリュームの状態を監視する場合に使用します。
Gds のディテクタとその監視方法・判定条件は、以下のとおりです。
クラスおよびボリュームの状態監視 (hvdet_gds)
クラスおよびクラスに含まれる各ボリュームの状態を監視するディテクタです。userApplication がボリュームに I/O を行い、その結果として、GDS がボリュームの故障を検出します。本ディテクタは、GDS からクラスまたはボリュームの状態が変化したときに通知を受け、それを PRIMECLUSTER に通知します。
Gls リソース
Gls リソースは、userApplication の起動・停止に合わせて引き継ぎネットワークの活性化・非活性化をし、ネットワークの状態を監視する場合に使用します。
Gls のディテクタとその監視方法・判定条件は、以下のとおりです。
NIC 切替方式 (hvdet_gls)
ルータ /HUB 監視先として設定したノードに ping 監視を 5 秒周期で実施し、監視します。
高速切替方式
クラスタ構成内の隣接するノードとの間でハートビートメッセージを 5 秒周期で送受信し監視します。