データサービスの開発を始める前に、Sun Cluster 開発パッケージ (SUNWscdev) をインストールして、Sun Cluster のヘッダーファイルやライブラリファイルにアクセスできるようにする必要があります。このパッケージがすでにすべてのクラスタノード上にインストールされている場合でも、通常は、クラスタノード上にはない独立した開発マシン、すなわちクラスタノード以外の開発マシンでデータサービスを開発します。このような場合、pkgadd コマンドを使って、開発マシンに SUNWscdev パッケージをインストールする必要があります。
コードをコンパイルおよびリンクするとき、ヘッダーファイルとライブラリファイルを識別するオプションを設定する必要があります。
互換モードでコンパイルされた C++ コードと標準モードでコンパイルされた C++ コードを Solaris オペレーティングシステム製品や Sun Cluster 製品で併用することはできません。したがって、Sun Cluster で使用する C++ ベースのデータサービスを作成する場合は、そのデータサービスを次のようにコンパイルする必要があります。
Sun Cluster 3.0 以前のバージョンで使用する場合は、互換モードでコンパイルする必要があります。
Sun Cluster 3.1 以降のバージョンで使用する場合は、標準モードでコンパイルする必要があります。
(非クラスタノードで) 開発が終了すると、完成したデータサービスをクラスタに転送して、検証を行うことができます。
Solaris OS の Solaris 8 OS またはそれ以降のバージョンの Developer または Entire Distribution ソフトウェアグループを使用してください。
この節の手順では、次の作業を完了する方法を説明します。
Sun Cluster 開発パッケージ (SUNWscdev) をインストールして、適切なコンパイラオプションとリンカーオプションを設定します。
データサービスをクラスタに転送します。
SUNWscdev パッケージをインストールして、コンパイラオプションとリンカーオプションをデータサービス開発用に設定する方法について説明します。
スーパーユーザーになるか、同等の役割になります。
使用する CD-ROM ディレクトリにディレクトリを変更します。
# cd cd-rom-directory |
SUNWscdev パッケージを現在のディレクトリにインストールします。
makefile に、データサービスのコードが使用する include ファイルとライブラリファイルを示すコンパイラオプションとリンカーオプションを指定します。
-I オプションは Sun Cluster のヘッダーファイルを指定し、-L オプションは、開発システム上にあるコンパイル時ライブラリの検索パスを指定し、-R オプションはクラスタの実行時リンカーのライブラリの検索パスを指定します。
# サンプルデータサービスの Makefile ... -I /usr/cluster/include -L /usr/cluster/lib -R /usr/cluster/lib ...
開発マシン上でデータサービスが完成した場合、データサービスをクラスタに転送して検証する必要があります。転送時にエラーが発生する可能性を減らすために、データサービスのコードと RTR ファイルを一緒にパッケージに保管して、クラスタのすべてのノード上でパッケージをインストールします。
データサービスをインストールするときは、pkgadd を使用するかどうかに関わらず、すべてのクラスタノード上にデータサービスをインストールする必要があります。Agent Builder は、このパッケージを自動的に作成します。