Sun Cluster 2.2 API 開発ガイド

はじめに

SunTM Cluster 2.2 は、2 台から 4 台までのノードサーバーハードウェア構成をサポートするソフトウェア製品です。SolarisTM 2.6 と Solaris 7 のソフトウェア環境と互換性があります。適切に構成することで、ハードウェアとソフトウェアによる高可用性データサービスが実現されます。Sun Cluster はボリュームマネージャが提供するミラー化やディスクセットなどの機能に依存します。Sun Cluster は 2 つのボリュームマネージャ、Solstice DiskSuiteTM と Sun StorEdge Volume ManagerTM (SSVM) をサポートします。

データサービスの高可用性を実現するために、Sun Cluster は 2 つの API (アプリケーションプログラミングインタフェース) を提供します。データサービス API を使用すると、Sun Cluster ソフトウェアの一番上の階層にクライアントサーバー形式のデータサービスを配置できます。障害モニター API を使用すると、プログラマは新しい高可用性 (HA) データサービス用の障害モニターを開発できます。

通常、対象となるデータサービスはすでに存在しており、非 HA 環境で開発されたものです。Sun Cluster の API は、既存のデータサービスを簡単に Sun Cluster 環境に追加できるように設計されています。このマニュアルでは、このような追加に関するヒントについても説明します。

このマニュアルでは、2 つの API の使用方法について説明します。また、データサービスの高可用性を実現するために準拠しなければならない規約についても説明します。

第 1 章「データサービス API」では、データサービスの高可用性を実現するための例を示します。例として挙げるデータサービスは、Sun の実装に固有な Internet DNS (ドメインネームサービス) である、デーモンプログラム in.named(1M) です。この in.named の例は、単に参考のためのもので、Sun ではこのコードの実行をサポートしていません。

このマニュアルは、「関連マニュアル」に記載されている他のハードウェアとソフトウェアのマニュアル、および API に関連するマニュアルページと共に使用してください。 マニュアルページは、hareg(1M)haget(1M)hads(1M)ha_open(1M)ha_get_calls(1M)hactl(1M)hatimerun(1M)rpc.pmfd(1M)pmfadm(1M)halockrun(1M) を参照してください。『Sun Cluster 2.2 のシステム管理』には、既存のデータサービスを統合するクラスタ環境について説明されています。

対象読者

このマニュアルは、既存のデータサービスアプリケーションを高可用性環境に統合するプログラマを対象としています。手順と説明は、高度な技術を持つ読者を対象としています。

このマニュアルの手順は、統合するデータサービスについて読者が高度な専門知識を持っていることを仮定しています。

内容の紹介

このマニュアルは、次の章および付録から構成されています。

第 1 章「データサービス API」では、アプリケーションプログラムの高可用性を実現できる Sun Cluster の概念を紹介します。

第 2 章「データサービスの例」では、サンプルのデータサービスを使用し、API を使用する方法について説明します。

第 3 章「HA データサービスの作成と検証についての注意事項」では、新しいデータサービスを最も効率的に作成および検証する方法について説明します。

付録 A 「多重ホストデータを配置するためのシンボリックリンクの使用」では、データサービスコードの変更を避けるために、シンボリックリンクを使用する方法について説明します。

付録 B 「API マニュアルページ」では、Sun Cluster のデータサービス API に関連するコマンドと関数の構文について説明します。

関連マニュアル

表 P-1 に、Sun Cluster に関連するマニュアルを示します。

表 P-1 関連マニュアル

製品ファミリ 

タイトル 

パート番号 

Sun Cluster 

Sun Cluster 2.2 のシステム管理

806-2312 

 

Sun Cluster 2.2 ソフトウェアのインストール

806-2315 

 

Sun Cluster 2.2 Error Messages Manual

805-4242 

 

Sun Cluster 2.2 ご使用にあたって

806-2321 

Solstice DiskSuite 

Solstice DiskSuite 4.2 ご使用にあたって

805-6381 

 

Solstice DiskSuite 4.2 ユーザーズガイド

805-5967 

 

Solstice DiskSuite 4.2 リファレンス

805-5976 

SSVM 

Sun SorEdge Volume Manager 2.6 ユーザーマニュアル

805-6679 

 

Sun StorEdge Volume Manager 2.6 システム管理ガイド

805-6680 

CVM 

Sun Cluster 2.2 Cluster Volume Manager ガイド

805-2324 

Oracle 

Oracle7 Installation Guide for Sun SPARC Solaris 2.x

802-6994 

ネームサービス 

ネームサービスの管理

801-7576 

 

ネームサービスの構成

801-7827 

その他 

NFS の管理

801-5824 

 

TCP/IP とデータ通信

801-5857 

表記上の規則

このマニュアルでは、次のような字体や記号を特別な意味を持つものとして使用します。

表 P-2 表記上の規則

字体または記号 

意味 

例 

AaBbCc123

コマンド名、ファイル名、ディレクトリ名、画面上のコンピュータ出力、またはコード例を示します。 

.login ファイルを編集します。

ls -a を使用してすべてのファイルを表示します。

system%

AaBbCc123

ユーザーが入力する文字を、画面上のコンピュータ出力とは区別して示します。 

system% su

password:

AaBbCc123

変数を示します。実際に使用する特定の名前または値で置き換えます。 

ファイルを削除するには、rm filename と入力します。

『 』 

参照する書名を示します。 

『コードマネージャ・ユーザーズガイド』を参照してください。 

「 」 

参照する章、節、ボタンやメニュー名、または強調する単語を示します。 

第 5 章「衝突の回避」を参照してください。 

この操作ができるのは、「スーパーユーザー」だけです。 

¥ 

枠で囲まれたコード例で、テキストがページ行幅を越える場合、バックスラッシュは継続を示します。 

sun% grep `^#define ¥
  XV_VERSION_STRING'

ただし AnswerBook2 では、ユーザーが入力する文字と画面上のコンピュータ出力は区別して表示されません。

コード例は次のように表示されます。

[ ] は省略可能な項目を示します。上記の場合、filename は省略してもよいことを示します。

| は区切り文字 (セパレータ) です。この文字で分割されている引数のうち 1 つだけを指定します。

キーボードのキー名は英文で、頭文字を大文字で示します (例: Shift キーを押します)。ただし、キーボードによっては Enter キーが Return キーの動作をします。

ダッシュ (-) は 2 つのキーを同時に押すことを示します。たとえば、Ctrl-DControl キーを押したまま D キーを押すことを意味します。