Oracle Flex Clusterの理解

Oracle Grid Infrastructure 12cリリース2 (12.2)以降、Oracle Grid Infrastructureクラスタ構成はOracle Flex Clusterデプロイメントになります。

Oracle Flex Cluster構成でインストールされるOracle Grid Infrastructureは、スケーラブルで動的、強固なノード・ネットワークです。Oracle Flexクラスタは、多数のノードを含むOracle Real Application Clustersデータベースのプラットフォームを提供し、大量のパラレル問合せ操作をサポートします。Oracle Flex Clusterでは、高可用性のために調整および自動化が必要な他のサービス・デプロイメントのプラットフォームも提供されます。

Oracle Flex Cluster内のすべてのノードは、単一のOracle Grid Infrastructureクラスタに属します。このアーキテクチャでは、様々なサービス・レベル、負荷、障害のレスポンス、およびリカバリに対処するために、アプリケーション・ニーズに基づいてリソースのデプロイメントに対するポリシー決定が集中管理されます。

Oracle Flexクラスタには、ハブおよびスポーク・アーキテクチャに配置される2つのタイプのノード(ハブ・ノードおよびリーフ・ノード)が含まれます。Oracle Flex Cluster内のハブ・ノードの最大数は64です。リーフ・ノードの数は、さらに多くできます。ハブ・ノードおよびリーフ・ノードは、異なるタイプのアプリケーションをホストしてパラレル問合せ操作を実行できます。

Oracle Flex Clusterのハブ・ノードは緊密に接続し、共有記憶域に直接アクセスします。Oracle Flex Cluster構成では、ハブ・ノードは1つ以上のリーフ・ノードに記憶域サービスを提供することもできます。3つのハブ・ノードが、リーフ・ノードからのストレージ・アクセス要求に対するI/Oサーバーとして機能します。I/Oサーバーとして機能するあるハブ・ノードが利用できない場合、Oracle Grid Infrastructureは、別のハブ・ノードで別のI/Oサーバーを起動します。

Oracle Flex Clusterのリーフ・ノードは、共有記憶域への直接アクセスが必要なく、かわりにハブ・ノードを介してデータを要求します。ハブ・ノードは、リーフ・ノードをクラスタ・メンバー・ノードとして含まないOracle Flex Cluster構成で実行できますが、リーフ・ノードは、ハブ・ノードのプールを含むクラスタのメンバーである必要があります。

リーフ・ノードで実行されているOracle RACデータベース・インスタンスは、Oracle ASMの遠隔クライアント・インスタンスと呼ばれます。Oracle ASMのメタデータは、遠隔クライアント・データベース・インスタンスには送信されません。かわりに、Oracle ASMの遠隔クライアント・データベースは、ハブ・ノードで実行されているI/Oサーバー・インスタンスにOracle Flex ASMネットワーク経由でI/O要求を送信します。

ハブ・ノードおよびリーフ・ノードに対してサーバーを構成します。サーバーには手動構成または自動構成を指定できます。

手動構成を選択した場合、クラスタの各ノードをハブ・ノードまたはリーフ・ノードとして指定する必要があります。各ロールでは、ストレージへのアクセスに別々のアクセス権が必要です。ハブ・ノードの役割を得るには、サーバーは記憶域に直接アクセスできる必要があります。リーフ・ノード・ロールとしての資格を持つには、サーバーがストレージへの直接アクセス権を持っていてもよいですが、リーフ・ノードはハブ・ノードを使用してクライアントとしてストレージにアクセスするため、必ずしもサーバーが直接アクセス権を持っている必要はありません。

ロールを自動構成する場合、ストレージへのアクセス権を持ち、接続できるクラスタ・ノードは、ターゲットとして指定した数を上限にハブ・ノードとして構成されます。ストレージへのアクセス権を持っていない、またはターゲットの数に達した後にクラスタに接続するその他のノードは、リーフ・ノードとしてクラスタに接続します。ノードは、必要に応じて、ストレージ・クライアント・サービスを提供するために、ローカルのASMまたはNear ASMを使用して構成されるハブ・ノードとして構成され、Oracle ASMディスクへの直接アクセス権を使用して構成されるリーフ・ノードは、必要に応じて、ハブ・ノードになるよう再構成できます。Oracleは、ハブ・ノード・ロールおよびリーフ・ノード・ロールを自動構成することをお薦めします。

リーダー・ノードについて

リーフ・ノードを使用して読取り専用モードで実行されるOracle RACデータベース・インスタンスをホスティングでき、これはリーダー・ノードとなります。データがそのリーフ・ノードにキャッシュされるように大量のメモリーを持つノードをプロビジョニングすることで、パラレル問合せ操作のためにこれらのノードを最適化できます。

リーフ・ノードは関連付けられているハブ・ノードに対して定期的にハートビートを送信します。これはハブ・ノード間でやり取りされるハートビート・メッセージとは異なります。ハブ・ノードの計画的なシャットダウン中、リーフ・ノードの接続先が唯一のハブ・ノードでないかぎり、リーフ・ノードは他のハブ・ノードへの接続を試みます。そのハブ・ノードが削除されると、リーフ・ノードもクラスタから削除されます。