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

並列データベースシステムの概要

共有ディスクのアーキテクチャー

OPS は、Sun Cluster の共有ディスク構成を使用します。共有ディスク構成では、1 つのデータベースが複数の OPS インスタンス間で共有され、それら OPS インスタンスは同時にデータベースにアクセスします。同じデータへのアクセスの衝突は、分散ロックマネージャ (Oracle UNIX Distributed Lock Manager (DLM)) によって制御されます。プロセスまたはノードがクラッシュすると、DLM は再構成され、障害からの回復が図られます。

非共有アーキテクチャー

Informix-Online XPS は、Sun Cluster の非共有ディスク構成を使用します。各ノード上のデータベースサーバーインスタンスは、その専用のデータベースパーティションに対する独占的なアクセス権を持ちます。

クライアントからデータベース照会があると、そのテーブルパーティションがサーバーによって解析され、プライベートネットワーク経由で適切なサーバーに転送されます。結果はプライベートネットワーク経由でマージされ、クライアントに返されます。

共有メモリーに関する問題

OPS などの一部アプリケーションでは、/etc/system ファイルを編集して、要求される共有メモリーの最小サイズを非常に大きくしなければならないことがあります。しかし、たとえば、/etc/system ファイル内の shmsys:shminfo_shmmin フィールドに 200 バイトより大きな値を設定した場合、sm_config(1M) コマンドは共有メモリーを取得できません。これは、システムが割り当て可能な最小サイズより少ないバイト数が最終的に要求されることになるためです。この結果、sm_config(1M) による shmget(2) システムコールで問題が発生し、sm_config(1M) は異常終了します。

この問題を回避するには、/etc/system をエディタで開いて、shmsys:shminfo_shmmin に 200 を設定し、shmsys:shminfo_shmmax に 200 より大きな値を設定してください。新しい値を有効にするには、マシンを再起動します。

semsys 警告メッセージが表示され、コアダンプが発生した場合は、/etc/system ファイル内の semsys:seminfo_* フィールドに含まれているセマフォ値がマシンの実際の物理的な制限に一致していないことを意味します。

OPS と IP フェイルオーバー

Oracle SQL*Net または Net8 は、OPS 環境でノード障害が発生した場合に、IP フェイルオーバー機能を使用することなく正常に動作している残りのサーバーに再接続するように構成できます。

OPS 環境では、複数の Oracle インスタンスが協力して、同じ共有データベースへのアクセスを可能にします。Oracle クライアントは、インスタンスのどれを使用しても、データベースにアクセスできます。つまり、インスタンスに問題が発生しても、クライアントは、残りのインスタンスに接続することによって、引き続きデータベースにアクセスできます。

再接続がエンドユーザーに透過的であるように残りのインスタンスに再接続する方法は多数あります。

Oracle SQL*Net の高可用性機能

Oracle クライアントから見ると、モデルは単純です。サーバーがクラッシュしたとき、クライアントは接続が切断されたことを検出します。クライアントはサーバーに再接続し、トランザクションを再実行するように依頼します。Oracle SQL*Net には、同じサービスの下で複数のホストにまたがって動作する複数インスタンスを組み込む機能が用意されています。この機能により、再接続したとき、クライアントは自動的に残りのインスタンスを利用できます。この再接続は自動的ではありません。一般に、クライアントには、前回と同じサービスに再接続するコードを組み込みます。


注 -

ノードまたはインスタンス障害あると、残りのサーバーは障害が発生したインスタンスを最初に回復する必要があります。この回復中、クライアントは、インスタンスからの応答がないことを検出します。この回復処理は、Sun Cluster フレームワークとは何の関係もありません。この回復は、Oracle、トランザクションボリューム、OPS に対する回復機能に完全に依存します。