Oracle Real Application ClustersおよびOracle Clusterware
Oracle RACとOracle Clusterwareを使用すると、Oracle AI Databaseはクラスタ化された一連のサーバー全体にパッケージまたはカスタム・アプリケーションを実行できます。
この機能により、高いレベルの可用性および最も柔軟的なスケーラビリティが得られます。クラスタ化されたサーバーに障害がある場合でも、Oracle AI Databaseは残りのサーバー上で稼働し続けます。より高い処理能力が必要なときは、データへのユーザーのアクセスを中断することなく、他のサーバーを追加できます。
Oracle RACを使用すると、インターコネクトでリンクされた複数のインスタンスによるOracleデータベースへのアクセスの共有が可能になります。Oracle RAC環境では、Oracle AI Databaseは単一の共有データベースに同時にアクセスしながら、クラスタ内の2つ以上のシステム上で稼働します。その結果、複数のハードウェア・システムにまたがる単一データベース・システムとなり、Oracle RACではクラスタ内での障害時に高可用性と冗長性を提供できます。Oracle RACは、読取り専用のデータ・ウェアハウス・システムから更新頻度の高いオンライン・トランザクション処理(OLTP)システムまで、あらゆるタイプのシステムに対応しています。
Oracle Clusterwareは、同じオペレーティング・システムを実行するサーバーにインストールされる場合、これらのサーバーが連係して単一サーバーとして機能できるようにして、ユーザー・アプリケーションとOracleデータベースの可用性を管理するソフトウェアです。また、ノードのメンバーシップ、グループ・サービス、グローバルなリソース管理、高可用性機能といったクラスタ管理に必要な機能もすべて提供します。
-
高可用性については、Oracleデータベース(単一インスタンスまたはOracle RACデータベース)とユーザー・アプリケーション(OracleおよびOracle以外)をOracle Clusterwareの管理と保護の下に置いて、プロセス障害時にはデータベースとアプリケーションが再起動し、ノード障害後には別のノードへのフェイルオーバーが行われるようにすることができます。
-
クラスタ管理については、複数の独立したサーバーがまるで単一システムのイメージまたは単一の仮想サーバーであるかのように示されます。この単一の仮想サーバーは、すべての管理操作に対してクラスタ全体で維持されるため、管理者はインストール、構成、バックアップ、アップグレードおよび監視の機能を実行できます。その後、Oracle Clusterwareが、これらの管理機能の処理を、クラスタ内の該当するノードに自動的に分散します。
Oracle Clusterwareは、Oracle RACを使用するための要件です。Oracle RACが動作するほとんどのプラットフォームにおいて、必要なクラスタウェアはOracle Clusterwareのみです。Oracle AI Databaseでは引き続きサード・パーティのクラスタウェア製品を指定されたプラットフォームでサポートしますが、Oracle Clusterwareを使用すれば、次の主な利点があります:
-
ベンダー独自開発のクラスタウェアが不要
-
ローカルまたはリモートのOracle Automatic Storage Management (Oracle Flex ASM)によるディスク管理を提供するOracleから、Oracle AI DatabaseおよびOracle RACによるデータ管理まで、統合ソフトウェア・スタックを使用
-
Oracle Flex Clusterと呼ばれる大規模クラスタに構成可能
さらに、OracleサービスなどのOracle AI Database機能では、Oracle Clusterwareの基本的なメカニズムを使用して、それらの機能を提供します。
Oracle Clusterwareには2つのクラスタウェア・コンポーネントが必要です。1つはノード・メンバーシップ情報を記録する投票ディスク、もう1つはクラスタ構成情報を記録するOracle Cluster Registry(OCR)です。投票ディスクとOCRは共有ストレージに存在する必要があります。Oracle Clusterwareでは、各ノードがプライベート・インターコネクト経由でプライベート・ネットワークに接続されている必要があります。
Oracle Clusterware使用の利点
Oracle Clusterwareには次のような利点があります。
-
コンピュータおよびインスタンス障害を許容し、迅速にリカバリします。
-
Oracle ClusterwareとOracle AI Databaseの併用により、管理およびサポートが簡素化されます。少数のベンダーとすべてのOracleスタックを使用することで、サード・パーティ・クラスタウェアを使用した場合より優れた統合を得られます。
-
システム変更およびハードウェア変更のローリング・アップグレードを実行します。たとえば、ローリング方式で、Oracle Clusterwareのアップグレード、パッチ・セットおよび個別パッチを適用できます。
-
エラーが発生したOracleプロセスを自動的に再開。
-
仮想IP(VIP)アドレスを自動的に管理。ノードに障害がある場合、そのノードのVIPアドレスは、VIPアドレスが接続を受け入れられる他のノードにフェイルオーバーされます。
-
障害が発生したノードのリソースを残りのノードで自動的に再開。
-
Oracleプロセスを次のように制御します。
-
Oracle RACデータベースの場合、すべてのOracleプロセスはデフォルトでOracle Clusterwareによって制御されます。
-
単一インスタンスのOracleデータベースの場合、Oracle Clusterwareで制御されるリソース・グループへのOracleプロセスを構成できます。
-
-
OracleアプリケーションおよびOracle以外のアプリケーションの場合、Application Programming Interface(API)が提供され、Oracle Clusterwareによるその他のOracleプロセス(再開、または障害や特定のルールへの応答など)を制御できます。
-
ノードのメンバーシップを管理し、2つ以上のインスタンスがデータベースを制御する際のスプリット・ブレイン・シンドロームを防止。
-
サーバーの重みベースのノード削除を使用すると、ビジネス要件を含むクラスタで特定の失敗が発生した場合に削除されるノードの選択をあわせて、最も重要なワークロードが必ずできるだけ長く維持されるようにし、サーバー間で同じ選択をしているとみなすことができます。
-
アプリケーションの停止時間ゼロで、Oracle Clusterwareのローリング・リリース・アップグレードの実行が可能。
Oracle Real Application ClustersおよびOracle Clusterware使用の利点
Oracle RACとOracle Clusterwareの併用には、Oracle Clusterwareのすべての利点に加え、次のような利点があります。
-
すべてのOracleソフトウェア・スタックを使用することで、サード・パーティ・クラスタウェアを使用した場合より優れたOracle AI Databaseの統合およびサポートを提供します。
-
Oracle Serviceの自動的再配置。さらに、高速アプリケーション通知(FAN)とクライアント構成を追加で実行する場合は、高速かつ自動のインテリジェントな接続とフェイルオーバーを実現するために、アプリケーションが素早く反応できるようなFANイベントの配信。
-
接続障害を高速に自動検出し、Oracle Universal Connection Pool(Oracle UCP)、高速接続フェイルオーバーおよびFANイベントを使用するJavaアプリケーションの終了済接続を削除します。
-
Oracle UCPランタイム接続ロード・バランシングを使用して作業リクエストを均等に分散します。
-
Oracle UCP、Oracle Call Interface(OCI)およびOracle Data Provider for .NET(ODP.NET)でランタイム接続ロード・バランシングを使用します。
-
ロード・バランシング・アドバイザを使用して、使用可能なすべてのインスタンスに作業を分散します。
-
Oracle Clusterwareが特定のデータベースに対するCPU要件と制限を認識するようデータベースを構成できます。Oracle Clusterwareはこの情報を使用して、CPU数、メモリー量またはその両方が十分備わっているサーバーにのみデータベース・リソースを配置します。
-
停止時間またはアプリケーションへの変更なしで、汎用ハードウェアを使用して処理能力を向上できる柔軟性を提供します。
-
データベースおよびクラスタの機能を統合する包括的な管理性を提供します。
-
データベース・インスタンス全体にわたるスケーラビリティを提供します。
-
プールされていない接続の高速接続フェイルオーバーを実装します。
従来のコールド・クラスタ・ソリューションより優れているOracle RACの利点
Oracle RACには、従来のコールド・クラスタ・ソリューションよりも多くの利点があり、次のような利点があります。
-
データベース・インスタンス全体にわたるスケーラビリティ
-
停止時間またはアプリケーションへの変更なしで、汎用ハードウェアを使用して処理能力を向上できる柔軟性
-
コンピュータおよびインスタンスの障害の許容および障害からの迅速なリカバリが可能(秒単位)
-
アプリケーションの低下を、コールド・クラスタ・ソリューションの場合の数分から数時間と比べて、ゼロまたは数秒にすることが可能
-
結合またはその他のテクノロジを使用せずに、冗長ネットワーク・インタフェースを使用したクラスタでの通信を最適化
Oracle Grid InfrastructureおよびOracle RACによる、ネットワーク・トラフィックを分散し、クラスタ内の最適な通信を保証する冗長インターコネクトの使用。この機能は、Oracle Database 11gリリース2(11.2.0.2)以上で使用できます。それまでのリリースでは、結合またはトランキングのようなテクノロジを使用してインターコネクト用の冗長ネットワークを使用していました。
-
システム変更およびハードウェア変更のローリング・アップグレード
-
個別パッチ、セキュリティ・パッチ、CPUおよびクラスタ・ソフトウェアのローリング・パッチ・アップグレード
-
高速、自動およびインテリジェントな接続とサービスの再配置ならびにフェイルオーバー
-
データベースおよびクラスタの機能を統合する包括的な管理性(グリッド・プラグ・アンド・プレイ、およびポリシーに基づくクラスタ管理と容量管理を使用)
-
ロード・バランシング・アドバイザおよびランタイム接続ロード・バランシングによる、適切なリソース全体での作業のリダイレクトおよび均等な分散
-
データベース・ワークロードへのリソース割当てをポリシーベースでランタイム管理するためのOracle Quality of Service(QoS)管理(動的状況下でのビジネス・ニーズの順にサービス・レベルが満たされます)。これはデータベースが実行しているサーバー・プールにサービスを割り当てることにより行われます。プールからのリソースを使用して、必要な容量が使用可能になるようにします。
-
Oracle Enterprise Managementによる、Oracle Automatic Storage Management (ASM)およびOracle Advanced Cluster File System (ACFS)、グリッド・プラグ・アンド・プレイ、クラスタ・リソース管理、Oracle ClusterwareとOracle RACのプロビジョニングとパッチ適用のサポート。
-
Oracle RACに接続しているクライアントへの単一の名前としての、SCAN(単一クライアント・アクセス名)サポート。この名前は、クラスタのノードを追加または削除しても、クラスタの存続期間中は変更されません。
次の図は、Oracle RACアーキテクチャを使用したOracle AI Databaseを示しています。この図は、パーティション化された3つのノードからなるデータベースの、Oracle RACアーキテクチャを使用したOracle AI Databaseを示しています。Oracle RACデータベースは、異なるノード上の3つのインスタンスに接続されています。各インスタンスは、サービス(人事、販売およびコール・センター)に関連付けられています。インスタンスはハートビートを確認することでお互いを監視します。Oracle Net Servicesは、図の最上部にあるアプリケーション/Webサーバー層へのクライアント・アクセスを提供します。
ノート:
Oracleリリース11.2以降では、Oracle Clusterware (コールド・クラスタ・フェイルオーバー)を使用するよりも、より完全で、機能豊富なソリューションであるOracle RAC One NodeまたはOracle RACをお薦めします。
