Azure KubernetesをOracle Database@Azure上のOracle Exadata Database Serviceに接続
開始する前に
このリファレンス・アーキテクチャを利用するには、次のものが必要です。
- Microsoft Azure Kubernetesサービス(AKS)
- AKSクラスタのデプロイ
- 次を使用してOracle Database@Azureを構成します:
- Azureサブスクリプションおよびディレクトリへのアクセス
- OCIテナンシへのアクセス
- AzureクラウドとOracleクラウド間のアクティブなOracle Database@Azureマルチクラウド・リンク
- OCIメニューで、「ガバナンスと管理」をクリックします。
- 「Tenancy Management」で、「Limits、 Quotas and Usage」をクリックします。
- 「サービス」ドロップダウン・メニューから「データベース」を選択します。
アーキテクチャ
Kubernetesは、コンテナ化されたワークロードおよびサービスを管理するためのポータブルで拡張可能なオープン・ソース・プラットフォームであり、宣言的な構成と自動化の両方を促進します。Kubernetesは、クラウド・ネイティブ・コンピューティングの基礎となるテクノロジーと考えられており、急速に成長する大規模なエコシステムを備えています。Kubernetesのサービス、サポート、ツールが幅広く利用可能です。
このアーキテクチャでは、AKSのコンテナ化されたアプリケーションが独自のアプリケーション・サブネット内にあります。Kubernetesクラスタには複数のポッドを含めることができ、それぞれが独自のOracle Pluggable Database (PDB)に接続されます。プライマリ・データベースのPDBは、Azure可用性ゾーンのOracle Exadata Database Service on Dedicated Infrastructureで実行されるOracle Database@Azureにデプロイされます。コンテナ・イメージはAzureコンテナ・レジストリに格納されます。ユーザーは、パブリック・ロード・バランサを介して外部からアプリケーションにアクセスします。
クラウドの自動化により、Oracle Exadata InfrastructureおよびOracleマルチテナント・データベース(CDBおよびPDB)のほとんどのライフサイクルおよび管理タスクが簡素化されます。たとえば、サーバーの追加とOCPUのスケール・アップとスケール・ダウン、データベースおよびデータベース・ホームの作成、インフラストラクチャ・メンテナンスのスケジュール、VMオペレーティング・システム、Grid Infrastructureおよびデータベースの更新とアップグレード、バックアップおよびリカバリ操作の実行、さらにはOracle Data Guardを介したディザスタ・リカバリ保護の有効化などです。
次の図は、このリファレンス・アーキテクチャを示しています。

図azure-kube-exadata-db.pngの説明
azure-kube-exadata-db:oracle.zip
アーキテクチャには次のコンポーネントがあります。
- リージョン
Oracle Cloud Infrastructureリージョンとは、可用性ドメインと呼ばれる1つ以上のデータ・センターを含む、ローカライズされた地理的領域です。リージョンは他のリージョンから独立しており、長距離の場合は(国または大陸にまたがって)分離できます。
Azureリージョンは、可用性ゾーンと呼ばれる1つ以上の物理Azureデータ・センターが存在する地理的領域です。リージョンは他のリージョンから独立しており、長距離の場合は(国または大陸にまたがって)分離できます。
AzureおよびOCIリージョンは、ローカライズされた地理的領域です。Oracle Database@Azureの場合、AzureリージョンがOCIリージョンに接続され、Azureの可用性ゾーン(AZ)がOCIの可用性ドメイン(AD)に接続されます。距離とレイテンシを最小限に抑えるために、AzureとOCIリージョンのペアが選択されます。
- Azure可用性ゾーン
可用性ゾーンは、使用可能でフォルト・トレラントになるように設計されたリージョン内の物理的に独立したデータ・センターです。アベイラビリティ・ゾーンは、他のアベイラビリティ・ゾーンへの低レイテンシ接続に十分近くなります。
サブネット委任とは、Microsoftがマネージド・サービス(特にPlatform-as-a-Serviceサービス)を仮想ネットワークに直接注入できることです。
- Microsoft Azure仮想ネットワーク
Microsoft Azure Virtual Network(VNet)は、Azureのプライベート・ネットワークの基本的な構成要素です。VNetを使用すると、Azure仮想マシン(VM)などの多くのタイプのAzureリソースが、相互に、インターネットおよびオンプレミス・ネットワークと安全に通信できます。
サブネット委任とは、Microsoftがマネージド・サービス(特にPlatform-as-a-Serviceサービス)を仮想ネットワークに直接注入できることです。
- Exadata Database Service on Dedicated Infrastructure
Oracle Exadata Database Serviceは、パブリック・クラウドで専用の最適化されたOracle Exadata Cloud Infrastructure上に実績のあるOracle Database機能を提供します。組み込みのクラウド自動化、柔軟なリソーススケーリング、セキュリティ、およびOLTP、インメモリ分析、およびコンバージドOracle Databaseワークロードのための高速パフォーマンスにより、管理を簡素化し、コストを削減できます。
Oracle Exadata Cloud Infrastructureは、より多くのCPUコア、ストレージの増加、およびより高速なネットワーク・ファブリックをパブリック・クラウドにもたらします。Oracle Exadataストレージ・サーバーには、Exadata RDMA Memory (XRMEM)が含まれ、追加のストレージ層が作成され、システム全体のパフォーマンスが向上します。Exadataは、XRMEMと、ネットワークおよびI/Oスタックをバイパスする革新的なRDMAアルゴリズムを組み合せ、高価なCPU割込みやコンテキスト・スイッチを排除します。
Oracle Exadata Cloud Infrastructureは、コンバージド・イーサネット(RoCE)内部ネットワーク・ファブリックの100Gbpsアクティブ/アクティブ・リモート・ダイレクト・メモリー・アクセスのスループットを向上させ、すべてのコンピュート・サーバーとストレージ・サーバー間で非常に低レイテンシで、以前の世代よりも高速なインターコネクトを提供します。
- Oracle Database Autonomous Recovery Service
Oracle Database Autonomous Recovery Serviceは、Oracle Databasesをデータ損失やサイバー脅威から保護するように設計されたフルマネージド・サービスです。これにより、データベース・オーバーヘッドの削減、検証済みバックアップによる信頼性の高いリカバリ、およびリアルタイムの保護により、停止またはランサムウェア攻撃から1秒以内のリカバリが可能になります。このサービスは、一元化されたデータ保護ダッシュボードを提供し、Oracle Databasesのバックアップに推奨されます。
- Azure Kubernetesサービス
Azure Kubernetes Service(AKS)は、Microsoft Azureが提供するマネージドKubernetesサービスで、コンテナ化されたアプリケーションをデプロイおよび管理します。Kubernetesクラスタには、複数のポッドを含めることができます。
- Oracle Database@Azure
Oracle Database@Azureは、Microsoft Azureデータ・センターにデプロイされたOracle Cloud Infrastructure (OCI)で実行されるOracle Databaseサービス(Oracle Exadata Database Service on Dedicated InfrastructureおよびOracle Autonomous Database Serverless)です。このサービスは、OCIと機能および価格パリティを提供し、ユーザーはAzure Marketplaceでサービスを購入します。
Oracle Database@Azureは、Oracle Exadata Database Service、Oracle Real Application Clusters (Oracle RAC)およびOracle Data GuardテクノロジをAzureプラットフォームに統合します。ユーザーは、AzureコンソールおよびAzure自動化ツールでサービスを管理します。サービスはAzure Virtual Network(VNet)にデプロイされ、Azure Identity and Access Managementシステムと統合されます。OCIとOracle Databaseの汎用メトリックと監査ログは、Azureでネイティブに利用できます。このサービスでは、ユーザーにAzureサブスクリプションとOCIテナンシが必要です。Oracle Autonomous DatabaseはOracle Exadata Cloud Infrastructure上に構築されており、自己管理、自己保護および自己修復が可能なため、手動のデータベース管理や人的エラーを排除できます。Autonomous Databaseでは、大規模言語モデル(LLM)と導入場所の選択肢を使用して、組み込みのAI機能を使用して、あらゆるデータでスケーラブルなAI搭載アプリを開発できます。
Oracle Exadata Database ServiceとOracle Autonomous Database Serverlessはどちらも、ネイティブのAzure Portalを介して簡単にプロビジョニングされるため、より広範なAzureエコシステムにアクセスできます。
お客様の商業的なメリットには、Oracle Exadata Database Service、OCI Object StorageおよびOracle Cloud Infrastructure Networkingデータ転送料金の調達にAzure Commitments (MACC)を使用することが含まれます。既存のOracleライセンスをBYOLとして利用でき、ライセンス込み、コラボレーティブなサポート・モデルおよびMicrosoft Azure Marketplaceでの調達もすべて1つの統一された請求として提示されます。
- コントロール・プレーン
Kubernetesコントロール・プレーンは、Kubernetesクラスタ内のワーカー・ノードおよびポッドのリソースを管理します。コントロール・プレーン・コンポーネントは、イベントを検出して応答し、スケジューリングを実行し、クラスタ・リソースを移動します。
- オブジェクト・ストレージ
OCIオブジェクト・ストレージでは、データベースのバックアップ、分析データ、イメージやビデオなどのリッチ・コンテンツなど、あらゆるコンテンツ・タイプの構造化データおよび非構造化データにすばやくアクセスできます。インターネットまたはクラウド・プラットフォーム内から直接、データを安全かつセキュアに格納できます。パフォーマンスやサービスの信頼性を低下させることなく、ストレージを拡張できます。
迅速、即時、頻繁にアクセスする必要があるホット・ストレージには、標準ストレージを使用します。長期間保持し、ほとんどまたはほとんどアクセスしないコールド・ストレージには、アーカイブ・ストレージを使用します。
- サービス・ゲートウェイ
サービス・ゲートウェイは、VCNからOracle Cloud Infrastructure Object Storageなどの他のサービスへのアクセスを提供します。The traffic from the VCN to the Oracle service travels over the Oracle network fabric and does not traverse the internet.
考慮事項
このリファレンス・アーキテクチャをデプロイする場合は、次の点を考慮してください。
- YAMLファイルを更新します
接続文字列を使用して、Azure Kubernetes ServiceデプロイメントのYAMLファイルを更新します。データベースへの接続文字列は、OCIコンソールで確認できます。
- パフォーマンス
-
Oracleマルチテナント・アーキテクチャは、マイクロサービス・アーキテクチャの永続性レイヤー、データのバインドされたコンテキスト分離、セキュリティ、および高可用性のために推奨されます。
Oracleマルチテナント・アーキテクチャでは、Oracle Databaseは、複数のプラガブル・データベース(PDB)を含むコンテナ・データベース(CDB)として機能できます。これにより、様々なデータ型とワークロードを持つマイクロサービスは、単一のコンバージド・コンテナ・データベースを使用できます。PDBを活用することで、OracleはCDB内のマイクロサービス分離データベースを提供し、物理コンテナ間でのPDBの移動を有効にできます。マイクロサービスは、Oracle Exadata Database Service on Dedicated Infrastructureで実行されているOracle Databaseインスタンスに接続できます。
-
- セキュリティ
- 接続文字列のパスワードおよびウォレット(該当する場合)をAzure Kubernetes ServiceのKubernetesシークレットに格納するのではなく、Azure Key Vaultなどのボールトを使用することを検討してください。
- ネットワーク
-
Oracle Databaseネットワーク・アタッチメントに委任されたサブネットを持つ、少なくとも1つのAzure Virtual Network (VNet)が必要です。
-
Microsoft Azure Kubernetes ServiceサブネットとOracle Exadata Database Service VMクラスタ・クライアント・サブネットを同じVNetにデプロイすることを検討してください。
-
- 可用性
-
ユニバーサル接続プール(UCP)、Oracle JDBCドライバおよびOracle Real Application Clusters (Oracle RAC)を使用して構成し、Oracle Databaseの高可用性(HA)機能を、アプリケーションの継続的な可用性を維持するための計画的および計画外の停止時間中に継続的なサービスに利用することを検討してください。
UCPでは、Oracle RAC、Oracle Data Guard、Oracle Sharding、非同期API、ランタイム・ロード・バランシング、XA、アプリケーション・コンティニュイティ、トランザクション・ガード、透過的アプリケーション・フェイルオーバー、単一クライアント・アクセス名(SCAN)、データベース常駐接続プール(DRCP)へのフロントエンドなど、すぐに利用できるすべてのOracle Database構成およびミッションクリティカル機能(可用性、スケーラビリティおよびロード・バランシング)がサポートされます。Oracle RACシステムでは、複数のサーバー・ノードからすべてのOracleデータベース・サービスに同等にアクセスできます。Oracle RACクラスタのノードまたはサブセットに障害が発生した場合や、メンテナンスのためにオフラインになった場合でも、残りのアクティブ・ノードからデータベースにアクセスできます。
-
Oracle Databaseでアプリケーション高可用性を実装するためのビルディング・ブロックを次に示します。
- データベース・サービスの使用
- 高可用性のURLまたは接続文字列の構成
- 高速アプリケーション通知(FAN)の有効化
- Javaアプリケーションのドレインと継続的なデータベース可用性の実現
-
Oracle Databaseのバックアップ保存先として推奨されるOracle Database Autonomous Recovery Serviceの使用を検討してください。
バックアップを格納するために使用可能な2つのオプションは次のとおりです。同じAzureリージョンにOracle Exadata Database Serviceが存在するか、Azureリージョンに関連付けられたデフォルトのOCIリージョンにあります。
-
詳細の参照
Oracle Cloud InfrastructureおよびOracle Database@Azureについてさらに学習します。
次のリソースを確認します。
- Oracle Database@Azureのドキュメント
- Kubernetesセキュリティとは
- Azure Kubernetes Service (AKS)クラスタの作成(チュートリアル)
- クイックスタート: Azureポータルを使用したAzure Kubernetes Service (AKS)クラスタのデプロイ
- KubernetesおよびOracle Database Cloud Servicesを使用したAzure CI/CDパイプラインを使用したMultiCloud DevOpsの構築(ワークショップ)
- Oracle Database@Azureマルチクラウド・ソリューション
- マルチクラウド・ソリューション