Sun Cluster 2.2 API 開発ガイド

INADDR_ANY へのバインドと特定の IP アドレスへのバインド

Sun Cluster の論理ホストの概念では、多重ホーム化されていない環境でも、マシンは複数の IP アドレスを持つことができます。つまり、独自の物理ホストの IP アドレスを 1 つだけ持ち、さらに、現在マスターしている論理ホストごとに 1 つの IP アドレスを持ちます。マシンが論理ホストのマスターになるとき、そのマシンは動的に追加の IP アドレスを獲得します。論理ホストのマスターを終了するとき、マシンは動的に IP アドレスを放棄します。

データサービスの中には、INADDR_ANY を使用するだけでは適切に動作しないものもあります。このようなデータサービスは、論理ホストのマスターになる時、またマスターをやめる時に、バインドする IP アドレスのセットを動的に変更しなければなりません。start メソッドまたは stop メソッドを呼び出すと、Sun Cluster は論理ホストが出現または消滅したことをデータサービスに知らせます。このようなデータサービスが再バインドする方法の 1 つが、stop メソッドと start メソッドを使用し、データサービスのデーモンを強制終了および再起動するという方法です。

クラスタの再構成時、データサービスのメソッドが呼び出される順番と、論理ホストのネットワークアドレスが Sun Cluster により構成される時間との間には関係があります。この関係についての詳細は、hareg(1M) のマニュアルページを参照してください。

データサービスは、stop メソッドが戻ってくるまでに、論理ホストの IP アドレスの使用を終了していなければなりません。同様に、データサービスは、start_net メソッドが戻ってくるまでに、論理ホストの IP アドレスの使用を開始していなければなりません。データサービスが、個々の IP アドレスにバインドするのではなく、INADDR_ANY を使用する場合は問題ありません。データサービスの stop メソッドと start メソッドでデータサービスのデーモンを強制終了および再起動する場合、データサービスは適切な時間にネットワークアドレスの使用を停止および開始します。