Sun Cluster データサービス開発ガイド (Solaris OS 版)

第 11 章 データサービス開発ライブラリのリファレンス

この章では、 データサービス開発ライブラリ (Data Service Development Library: DSDL) の API 関数の一覧を示し、概要を述べます。個々の DSDL 関数の詳細については、そのマニュアルページ (3HA) を参照してください。DSDL は C 言語用のインタフェースだけを定義します。スクリプトベースの DSDL インタフェースはありません。

DSDL には、次のタイプの関数があります。

DSDL 関数

この節では、DSDL 関数の各カテゴリを簡単に説明します。DSDL 関数を定義するリファレンスについては、個々のマニュアルページ (3HA) を参照してください。

汎用関数

このカテゴリの関数は、さまざまな機能を提供します。これらの関数では、次の操作を行うことができます。

次の関数は、呼び出しメソッドを初期化します。

次の関数は、リソース、リソースタイプ、リソースグループ、および拡張プロパティについての情報を取得します。

次の関数は、リソースが使用している SUNW.HAStoragePlus リソースについての状態情報を取得します。

次の関数は、リソースまたはリソースグループをフェイルオーバーまたは再起動します。

次の関数は、タイムアウトを適用してコマンドを実行し、エラーコードをエラーメッセージに変換します。

プロパティ関数

このカテゴリの関数は、関連するリソース、リソースグループ、およびリソースタイプ (よく使用される一部の拡張プロパティも含む) に固有なプロパティにアクセスするのに有用な API を提供します。DSDL は、scds_initialize を使用して、コマンド行引数を解析します。scds_initialize(3HA) 関数は、関連するリソース、リソースグループ、およびリソースタイプの様々なプロパティをキャッシュに入れます。

これらの関数の説明は scds_property_functions(3HA) にあります。次にさまざまなサポート関数について説明します。

ネットワークリソースアクセス関数

このカテゴリの関数は、リソースおよびリソースグループが使用するネットワークリソースを、取得、出力、および解放します。ここで説明する scds_get_* 関数は、RMAPI 関数を使用して Network_resources_usedPort_list などのプロパティを照会しなくても、ネットワークリソースを取得できる便利な方法を提供します。scds_print_name() 関数は、scds_get_ name() 関数から戻されたデータ構造から値を出力します。scds_free_ name() 関数は、scds_get_name() 関数が割り当てたメモリーを解放します。

ホスト名を扱う関数には次のものがあります。

ポートリストを扱う関数には次のものがあります。

ネットワークアドレスを扱う関数には次のものがあります。

TCP 接続を使用する障害監視

このカテゴリの関数は、TCP ベースの監視を行います。通常、障害モニターはこれらの関数を使用して、サービスとの単純ソケット接続を確立し、サービスのデータを読み書きしてサービスの状態を確認した後、サービスとの接続を切断します。

次にさまざまなサポート関数について説明します。

PMF 関数

このカテゴリの関数は、PMF 機能をカプセル化します。PMF 経由の監視における DSDL モデルは、pmfadm(1M) に対して、暗黙のタグ値を作成および使用します。また、PMF 機能は、Restart_intervalRetry_count、および action_script 用の暗黙値も使用します (pmfadm-t-n、および -a オプション)。最も重要な点は、DSDL が、PMF によって検出されたプロセス停止履歴を、障害モニターによって検出されたアプリケーション障害履歴に結びつけ、再起動またはフェイルオーバーのどちらを行うかを決定することです。

次にさまざまなサポート関数について説明します。

障害監視関数

このカテゴリの関数は、障害履歴を保持し、その履歴を Retry_count および Retry_interval プロパティと関連付けて評価することにより、障害監視の事前定義モデルを提供します。

次にさまざまなサポート関数について説明します。

ユーティリティ関数

このカテゴリの関数は、メッセージやデバッグ用メッセージをシステムログに書き込みます。次にさまざまなサポート関数について説明します。