ヘッダーをスキップ
Oracle® Fail Safe概要および管理ガイド
リリース4.1.1 for Microsoft Windows
E61782-01
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

3 Oracle Fail Safeソリューションの設計

Oracle Fail Safeには多数の構成オプションがあり、各自のアーキテクチャ要件またはフェイルオーバー要件に対応します。

この章では、次の項目について説明します。

3.1 構成のカスタマイズ

可用性の高いソリューションは、次の構成を使用してデプロイできます。

作業をクラスタ・ノード間で割り当てる方法はそれぞれの構成で異なりますが、次に示すことは両方の構成に共通しています。

  • 1つ以上のOracleホームが、各ノードのプライベート・ディスク(通常はシステム・ディスク)に作成されます。

  • Oracle製品の実行可能ファイルがすべて、各ノードのOracleホームにインストールされます。

  • 可用性を高めようとするアプリケーションで必要なすべてのデータファイル、構成ファイル、ログ・ファイル、HTMLファイルなどはクラスタ・ディスク上に置かれるため、各クラスタ・ノードからアクセスが可能です。

Oracle Fail Safeソフトウェアは、適切な構成とフェイルオーバーを保証するために、必要に応じて1つ以上のクラスタ・ノードで自動的に実行されます。

図1-4に、クラスタをOracle Fail Safeで構成した場合のソフトウェアおよびハードウェア・コンポーネントを示しています。

3.1.1 アクティブ/パッシブ構成

アクティブ/パッシブ構成では、1つ以上のノードがクラスタ全体の作業負荷のホストになりますが、1つのノードが(スタンバイ・サーバーとして)アイドル状態を維持し、アプリケーションを実行しているノードで障害が発生した場合に処理を引き継ぐために待機します。このソリューションでは、フェイルセーフな作業負荷のパフォーマンスがフェイルオーバーの前後で同じになります。

図3-1は、ノード1にOracle Databaseを置き、ノード2をスタンバイ・サーバーとした2ノードの構成です。現在、ノード2では何も実行されていません。フェイルオーバーの際、ノード2はノード1の作業負荷を引き継ぎます。

図3-1 2ノードのアクティブ/パッシブ(スタンバイ)構成

図3-1の説明が続きます。
「図3-1 2ノードのアクティブ/パッシブ(スタンバイ)構成」の説明

図3-2は、ノード1、ノード2およびノード3にOracle Databaseを置く4ノードの構成です。ノード4はスタンバイ・ノードです。現在、ノード4では何も実行されていません。フェイルオーバーの際、ノード4はフェイルオーバーの作業負荷を引き継ぎます。

図3-2 4ノードのアクティブ/パッシブ(スタンバイ)構成

図3-2の説明が続きます。
「図3-2 4ノードのアクティブ/パッシブ(スタンバイ)構成」の説明

パッシブのスタンバイ・ノードにはそれ自体の作業負荷がないため、アクティブ/パッシブ構成は最高速のフェイルオーバー構成です。

3.1.2 アクティブ/アクティブ構成

アクティブ/アクティブ構成では、各ノードがアプリケーション処理作業を共有し、障害発生時には他のノードのバックアップも行います。1つのノードに障害が発生した場合、別のノードが障害ノードからフェイルオーバーされたアプリケーションやサービスのみでなく、それ自体のアプリケーションおよびサービスも実行します。アクティブ/アクティブ構成は、アクティブ/パッシブ構成よりもコスト効率に優れています。この構成では、柔軟なアーキテクチャによって業務上の要求に最も合うように作業負荷を分割できます。

図3-3は、両方のクラスタ・ノードでOracle Databaseが稼働する、2ノードのアクティブ/アクティブ構成を示しています。また、汎用サービスがノード1で実行されています。図3-3では、ノード1でマーケティング用にOracle Databaseが1つ使用され、ノード2でも販売用にOracle Databaseが1つ使用されます。ノード1が所有するクラスタ・ディスクにはマーケティング・ファイルが格納され、ノード2が所有するクラスタ・ディスクには販売ファイルが格納されています。

図3-3 アクティブ/アクティブ構成

図3-3の説明が続きます。
「図3-3 アクティブ/アクティブ構成」の説明

アクティブ/アクティブ構成では、通常操作中、すべてのノードがアクティブにアプリケーションを処理します。この構成では、すべてのノードが動作している場合に優れたパフォーマンス(より効果的なスループット)を実現しますが、フェイルオーバーは低速で、ノードに障害が発生するとパフォーマンスが低下する可能性があります。また、クライアント接続がすべてのノードに分配されます。

作業負荷のバランス調整とは、各システムの通常の作業負荷の大きさを調整することです。すべてのシステムがほぼ上限の能力で稼働している場合、停止した他のシステムの作業負荷を処理するためのリソースはほとんど使用できず、クライアント・システムではフェイルオーバー中およびフェイルオーバー後の応答時間が大幅に遅くなります。速やかに修復できるリソースや、障害システムに置き換えられるリソースがある場合は、片方のクラスタ・ノードが両方の作業負荷を担当する時間は短くなります。実際、停止時間があるよりもアプリケーションの実行速度が遅くなる方がよいという業務もあります。

また、すべてのシステムが(クラスタ中のノード数に応じて)75%から50%より低い能力で稼働する場合、フェイルオーバー後のクライアントへの応答時間は長くなりませんが、通常の状態では1システム全体に相当する分がアイドル状態であり、アクティブ/パッシブ構成とほとんど同じになってしまいます。

Oracle Fail Safeでは、このタイプの構成に伴うパフォーマンス上の問題を回避するような構成が可能です。たとえば、次のようなことが可能です。

  • ミッション・クリティカル・アプリケーションに関してのみ、フェイルオーバーを可能にします。

  • 各ノードごとに異なるデータベース・パラメータ・ファイルを使用して、フェイルオーバーの後はより少ないシステム・リソースを使用するように設定します。

  • 各コンポーネント(Oracle Databaseなど)を、独自のフェイルオーバー・ポリシーおよびフェイルバック・ポリシーを持つ個別のグループに構成します。

    Oracle Fail Safeでは各クラスタ・ノードがいくつかの仮想サーバーのホストになるように構成できるため、このことが可能になります。

  • Oracle Fail Safeのスクリプト作成サポート(第5章で説明しているPowerShellコマンドレットを使用)と、システム・モニタリング・ツール(Oracle Enterprise Managerなど)を併用して、ロード・バランスのためのグループ移行を自動化します。

すべてのノードが物理的に同等である必要はありませんが、十分な能力とメモリー、ディスク・ホスト・アダプタおよびディスク・ドライブを持つサーバーを選択し、忙しい時間帯にフェイルオーバーが発生した場合でも十分なレベルのサービスをサポートする必要があります。

3.2 クライアントとアプリケーションの統合

クライアント・アプリケーションをOracle Fail Safe環境で動作させる場合、特別なプログラミングや変更は必要ありません。シングル・ノードのOracleリソースで動作するクライアント・アプリケーションであれば、再コーディングまたは再コンパイル、再リンクをすることなくOracle Fail Safe環境で正常に機能し続けます。これは、クライアントが仮想サーバーを利用してアプリケーションにアクセスできるためです。

第7章に、クライアントとアプリケーションの統合に関連する項があります。第7章では、データベースがクラスタ内の別のノードにフェイルオーバーする場合のクライアントとアプリケーションの透過的なフェイルオーバーの方法について説明します。