Oracle Notification Serverプロキシを使用するOracle Database Cloud Servicesについて
Oracle Connection Manager (CMAN)は、接続リクエストとレスポンスを透過的に転送し、エントリ・ポイントを提供し、TLSセキュリティ、プロトコルのスイッチング/ルーティングおよびアクセス制御を提供することで、データベースとアプリケーションが異なるcloud serviceプロバイダ上にあるマルチクラウド・デプロイメントを容易にします。
このソリューション・プレイブックでは、単一のCMANインスタンスをOracle Databaseとともに使用して、クライアントがOracle RACイベントをサブスクライブできるように、Google Cloudとの接続を作成する方法を学習します。ノート:
複数のCMANインスタンスは、より優れたロード・バランシング機能を提供し、パフォーマンスと可用性を強化できます。gc-oci-ons-subscribe-rac-events-arch oracle.zip
Oracle Notification Service (ONS)は、Oracle Grid Infrastructureのコンポーネントで、サーバー・ロード、ノード・アップまたはダウンなどのOracle Real Application Clusters (Oracle RAC)イベントを公開します。データベースに直接接続するデータベース・クライアントまたは接続プールを使用するデータベース・クライアントは、これらの通知をサブスクライブできるため、クリティカル・イベント中にアクションを実行できます。アプリケーションとOracle RACデータベースが異なるクラウド・プロバイダにまたがるマルチクラウド・デプロイメントでは、アプリケーションはCMANを使用してOracle RACデータベースと通信できます。ただし、これらのセッションは、バインドされていない高速アプリケーション通知(FAN)イベントを受信できません。
Oracle RACでは、ONSデーモンは、nodeapps
の一部としてOracle Clusterwareによって起動されます。クラスタ化されたノードごとに1つの ONSデーモンが起動されます。ONSデーモンは、ローカルのEVMD
Clusterwareデーモンを使用して、公開されたOracle Clusterwareイベントのサブセットを受信し、これらのイベントをアプリケーション・サブスクライバおよびローカル・リスナーに転送して、次のことを容易にします。
- アプリケーションがデータベースの状態変更に応答できるようにする高速アプリケーション通知(FAN)機能。高速接続フェイルオーバー(FCF)は、FAN機能を使用して実現するクライアント・メカニズムです。
- 異なるRACノード間のロード・バランシングを許可するロード・バランシング・アドバイザ(RLB機能)機能は、異なるノードのロードによって異なります。RDBMS MMONプロセスは、30秒ごとに作業の分散に関するアドバイザを作成し、ONSを使用してリスナーおよびアプリケーションに転送します。
クライアントがOracle RACイベントをサブスクライブできるようにするには、Oracle Notification Serverプロキシが必要です。CMANは、リクエストとレスポンスを透過的に転送し、単一エントリ・ポイントを提供し、TLSセキュリティ、プロトコルのスイッチング/ルーティングおよびアクセス制御を提供します。CMANホストで実行されているOracle Notification Serverは、ONSプロキシを介してOracle RACネットワーク上のONSサーバーと通信します。CMANホスト上のONSをサブスクライブするクライアント・アプリケーションは、Oracle RACパブリック・ネットワーク上のOracle Notification ServiceでOracle Notification Serverプロキシを使用して通信します。
ons-publish-subscribe-proxy-arch oracle.zip
ONSは、HTTPプロトコルのサブセットを使用する汎用的な帯域外メッセージ配信メカニズムを提供します。ONSは、サブスクライブしているクライアントに配信される通知をサーバーがパブリッシュするパブリッシュ/サブスクライブ・メカニズムです。
Oracle RACクラスタでは、ONSデーモンの1つのインスタンスが、すべてのクラスタ・ノードのOracle Clusterwareによって起動されます。データベース・サーバーのデプロイメントは通常、ファイアウォールによって保護されるため、ONSサーバーもその背後にあります。サーバーは、外部向けOracle Notification Serverを介して、ファイアウォール外部のクライアントにアクセスできるプロキシに接続します。プロキシは、内部ONSサーバーからの通知が公開される外部Oracle Notification Serverインスタンスからスピンオフします。その後、外部ONSサーバーは、これらの通知をサブスクライブされたクライアントに公開します。
開始する前に
開始する前に、次の操作を行ってください。
必要なサービスおよびロールについて
このソリューションには、次のサービスおよびロールが必要です。
- Oracle Cloud Infrastructure Networking
- Oracle Cloud Infrastructure FastConnect
- Oracle Cloud Infrastructure Compute
- Oracle Base Database Service
各サービスに必要なロールは次のとおりです。
サービス名: ロール | 必要... |
---|---|
OCIネットワーク: manage vcn-family |
VCNs、サブネット、セキュリティ・ルールおよびFastConnectを含むネットワーク・コンポーネントを管理します。 |
OCIコンピュート: manage instance-family |
コンピュートVMインスタンスを作成します。 |
OCIデータベース: manage database-family |
ベース・データベース・サービス・インスタンスの作成 |
必要なものを取得するには、Oracle製品、ソリューションおよびサービスを参照してください。
アーキテクチャ
rac-cman-proxy-deploy-multicloud-arch-oracle.zip
Oracle Connection Manager (CMAN)は、同じOCI VCNのパブリック・サブネットにあるOCI Compute仮想マシンにデプロイされます。クライアントは、パブリック・サブネット上のパブリックIPを使用してCMANにアクセスできます。ONSサーバーと ONSプロキシは、CMANホストマシン上に構成されます。CMANリスナーは、ファイアウォールの背後にあるOracle RACデータベースに接続します。
Oracle clientソフトウェアを含むアプリケーションは、Google CloudのCompute仮想マシンにデプロイされます。
同じデータベース・サーバーおよびONSに接続された複数のCMANを使用することもできます。この場合、すべてのCMANノードでONSプロキシとOracle Notification Serverを構成する必要があります。
このアーキテクチャでは、次のコンポーネントがサポートされています。
- OCIのリージョン
OCIリージョンとは、可用性ドメインをホストする1つ以上のデータ・センターを含む、ローカライズされた地理的領域のことです。リージョンは他のリージョンから独立しており、長距離の場合は複数の国または大陸にまたがる領域を分離できます。
- フォルト・ドメイン
フォルト・ドメインは、可用性ドメイン内のハードウェアおよびインフラストラクチャのグループです。各可用性ドメインには、独立した電源とハードウェアを備えた3つのフォルト・ドメインがあります。複数のフォルト・ドメインにリソースを分散すると、アプリケーションは、フォルト・ドメイン内の物理サーバー障害、システム・メンテナンスおよび電源障害を許容できます。
- OCI virtual cloudのネットワークおよびサブネット
仮想クラウド・ネットワーク(VCN)は、ソフトウェアで定義されたカスタマイズ可能なネットワークであり、OCIリージョン内に設定します。従来のデータ・センター・ネットワークと同様に、VCNsではネットワーク環境を制御できます。VCNには、VCNの作成後に変更できる重複しない複数のクラスレス・ドメイン間ルーティング(CIDR)ブロックを複数含むことができます。VCNをサブネットにセグメント化して、そのスコープをリージョンまたは可用性ドメインに設定できます。各サブネットは、VCN内の他のサブネットと重複しない連続した範囲のアドレスで構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックにもプライベートにもできます。
- 可用性ドメイン
可用性ドメインは、リージョン内の独立したスタンドアロン・データ・センターです。各可用性ドメイン内の物理リソースは、他の可用性ドメイン内のリソースから分離されているため、フォルト・トレランスが提供されます。可用性ドメインどうしは、電力や冷却、内部可用性ドメイン・ネットワークなどのインフラを共有しません。そのため、ある可用性ドメインでの障害が、リージョン内の他の可用性ドメインに影響することはありません。
- OCI FastConnect
Oracle Cloud Infrastructure FastConnectは、データセンターとOCI間に専用のプライベート接続を作成します。FastConnectは、インターネット・ベースの接続と比較して、より高帯域幅のオプションとより信頼性の高いネットワーキング体験を提供します。
- OCIコンピューティング
Oracle Cloud Infrastructure Computeを使用すると、クラウド内のコンピュート・ホストをプロビジョニングおよび管理できます。CPU、メモリー、ネットワーク帯域幅およびストレージのリソース要件を満たすシェイプを使用してコンピュート・インスタンスを起動できます。コンピュート・インスタンスを作成した後は、セキュアにアクセスし、再起動してボリュームをアタッチおよびデタッチし、不要になったときにそれを終了できます。
- Oracle Base Database Service
Oracle Base Database Serviceは、仮想マシン上でフル機能のOracle databasesを構築、スケーリングおよび管理できるOCIデータベース・サービスです。Oracle Base Database Serviceは、ローカル・ストレージではなくOCI Block Volumesストレージを使用し、Oracle Real Application Clusters (Oracle RAC)を実行して可用性を向上させることができます。
- Oracle Linux
Oracleは、最新のITインフラストラクチャの基本的な構成要素であるオペレーティング・システム、コンテナおよび仮想化を、1つの統合製品であるOracle Linuxに統合します。Oracle Linuxは、データセンターまたはクラウド内の任意のハードウェアで実行することで、要求の厳しいエンタープライズ・ワークロードに信頼性、スケーラビリティ、セキュリティ、パフォーマンスを提供します。
- Oracle Clusterware
Oracle Clusterwareでは、サーバーが相互に連携して、高可用性ユニットとして機能するように見えます。このサーバーの集合を一般的にクラスタと呼びます。サーバーはスタンドアロンサーバーですが、各サーバーはほかのサーバーと通信するため、個々のサーバーはアプリケーションやエンドユーザーに対して1つのシステムとして表示されます。Oracle Clusterwareは、クラスタ内のコンポーネント、再起動またはリソースのフェイルオーバーも監視して、高可用性を確保します。Oracle Clusterwareは、Oracle RACの実行に必要なインフラストラクチャとなります。また、Oracle Clusterwareでは、仮想IP (VIP)アドレス、データベース、リスナー、サービスなどのリソースも管理します。
- Oracle Connection Manager
Oracle Connection Manager (CMAN)は、Oracleデプロイメントで使用される多目的データベース接続プロキシです。クライアント・アプリケーション・リクエストをOracle Databaseに透過的に転送し、レスポンスをクライアント・アプリケーションにリレーします。クライアントは、ユーザー・アプリケーションまたは中間層ソフトウェア・ソリューションです。CMANは、クライアントからデータベース・ネットワーク・レイヤー(Oracle RACパブリック・ネットワークを含む)を抽象化します。複数のデータベースを単一のCMANインスタンスの背後にデプロイできます。したがって、クライアントはデータベース層に単一エントリ・ポイントを使用できます。CMANは、ローカルおよびリモートのOracle Databaseに接続するためのTLSセキュリティ、プロトコル・スイッチング/ルーティングおよびアクセス制御を提供します。
- Oracle Databaseウォレットと証明書
データ・セキュリティは、データベースで最も重要なタスクです。データベース・システムに対する攻撃の数と洗練度は増え続けています。データベース・システムが動作していることを確認するのは、圧倒的な作業です。Oracle Database walletは、認証および署名資格証明を格納するパスワードで保護されたコンテナです。これには、データベース・クライアントがOracle Databaseネットワーク間で通信できるようにする秘密キーおよび証明書が含まれます。
Oracle Database証明書(公開キー・インフラストラクチャ(PKI)デジタル証明書)は、walletを使用する公開キーまたは秘密キー交換でエンド・エンティティのアイデンティティを検証するwalletコンポーネントです。
- Oracle Notification Service
Oracle Notification Service (ONS)は、Oracle Grid Infrastructureのコンポーネントで、サーバー・ロード、ノード・アップまたはダウンなどのOracle Real Application Clusters (Oracle RAC)イベントを公開します。データベースに直接接続するデータベース・クライアントまたは接続プールを使用するデータベース・クライアントは、これらの通知をサブスクライブできるため、クリティカル・イベント中にアクションを実行できます。アプリケーションとOracle RACデータベースが異なるクラウド・プロバイダにまたがるマルチクラウド・デプロイメントでは、アプリケーションはCMANを使用してOracle RACデータベースと通信できます。ただし、これらのセッションは、バインドされていない高速アプリケーション通知(FAN)イベントを受信できません。
ONSは、HTTPプロトコルのサブセットを使用する汎用的な帯域外メッセージ配信メカニズムを提供します。ONSは、クライアントがサブスクライブしているクライアントに配信される通知を公開するパブリッシュ/サブスクライブ・メカニズムです。サブスクリプション構文は柔軟性があり、単一のサブスクライバが多数の異なるタイプの通知または非常に特定のタイプのみに一致する可能性があります。Oracle Notification Serviceは、Oracle Databaseでメッセージングおよびイベント・システムとして使用されます。
- Oracle Notification Server
Oracle Notification Serverは、Oracle Notification Service (ONS)を実行します。
- Oracle Interconnect for Google Cloud
Oracle Interconnect for Google Cloudは、OCI FastConnectパートナ接続とGoogle Cloud Partner Interconnectを組み合せた専用のプライベート相互接続サービスであり、マルチクラウドの顧客が2つのクラウド間でイノベーションを行い、既存の使い慣れたツールを適用してワークロードをサポートするのに役立ちます。