Amazon Web Services ブログ

AWS CloudFormation を使った Oracle Database@AWS スタックのプロビジョニング

本記事は 2026 年 1 月 12 日 に公開された「Provision Oracle Database@AWS stack using AWS CloudFormation」を翻訳したものです。

Oracle Database@AWS (ODB@AWS) は、Oracle Cloud Infrastructure (OCI) が管理する Oracle Exadata インフラストラクチャを AWS データセンター内から提供します。Exadata の高性能、スケーラビリティ、高度な機能を活かしながら Oracle データベースを AWS に移行できます。Oracle Database@AWS は、Amazon Simple Storage Service (Amazon S3)、zero-ETL パイプライン、AWS Key Management Service (AWS KMS) などのネイティブ AWS サービスとの深い統合を提供します。Oracle データベースは Amazon Elastic Compute Cloud (Amazon EC2)、Amazon Elastic Container Service (Amazon ECS)、Amazon Elastic Kubernetes Service (Amazon EKS) などにデプロイされたアプリケーションと並行して実行できます。この緊密な統合によりデータフローが簡素化され、セキュリティが強化され、多様なコンピューティング環境全体でのアプリケーション開発が加速します。

Oracle Database@AWS は現在、以下の Oracle Database サービスを提供しています。

Infrastructure as Code (IaC) は、構成ファイルを使ってアプリケーションのインフラストラクチャをプロビジョニング・管理するプロセスです。IaC はインフラストラクチャ管理の一元化、リソースの標準化、迅速なスケールを可能にし、新しい環境を再現可能で信頼性が高く一貫したものにします。Oracle Database@AWS のリソースは、Terraform や AWS CloudFormation などの IaC ツールを使ってデプロイできます。

AWS CloudFormation は、AWS およびサードパーティのリソースを簡単にモデル化、プロビジョニング、管理できる IaC サービスです。AWS リソースのモデル化とセットアップを支援し、リソース管理に費やす時間を減らして AWS 上のアプリケーションに集中できるようにします。

本記事では、AWS CloudFormation テンプレートを使って、ODB ネットワークOracle Exadata インフラストラクチャExadata VM クラスターAutonomous VM クラスターなど Oracle Database@AWS の主要コンポーネントをセットアップする方法を説明します。

ソリューションの概要

Oracle Database@AWS を始めるには、AWS Marketplace でリスティングを確認します。サービスを利用するには、AWS アカウント内でオンボーディングと呼ばれるプロセスで設定します。オンボーディングを開始するには、Oracle の担当者に連絡して Private Offer をリクエストします。料金と条件に合意した後、AWS Marketplace で購入を完了します。購入完了後、AWS アカウントと OCI テナンシーをリンクします。これをマルチクラウドリンクと呼びます。要件に応じて、エンタイトルメント共有機能を使い、同じ AWS Organization 内の AWS アカウント間で ODB@AWS の AWS Marketplace エンタイトルメントを共有できます。オンボーディング完了後、Exadata Database Service on Dedicated Infrastructure および Autonomous AI Database on Dedicated Exadata Infrastructure 向けに Oracle Database@AWS のシステムリソースのプロビジョニングを開始できます。プロビジョニングは ODB ネットワークと Exadata インフラストラクチャの作成から始まります。ワークロードと要件に応じて、Oracle Exadata Database Service 用の Exadata VM クラスター、または Autonomous AI Database on Dedicated Exadata Infrastructure 用の Autonomous VM クラスターを作成します。

Oracle Database@AWS の使用を開始するには、Oracle Database@AWS コンソール、AWS CLI、または API を使って以下のリソースを作成します。

  1. ODB ネットワーク
  2. Oracle Exadata インフラストラクチャ
  3. Exadata VM クラスターまたは Autonomous VM クラスター
  4. ODB ピアリング接続

次の図は Oracle Database@AWS のアーキテクチャを示しています。

詳細に入る前に、Oracle Database@AWS のアーキテクチャと主要コンポーネントを理解することが重要です。

  • Amazon Virtual Private Cloud とサブネット: Amazon Virtual Private Cloud (Amazon VPC) は、定義した仮想ネットワーク内に AWS リソースを起動できます。この仮想ネットワークは自社データセンターで運用する従来型ネットワークに似ていますが、AWS のスケーラブルなインフラストラクチャを利用できます。VPC を作成した後、サブネットを追加できます。サブネットは Amazon VPC 内の IP アドレス範囲です。特定のサブネットに Amazon EC2 インスタンスなどの AWS リソースを作成できます。
  • OCI Virtual Cloud Network (VCN) とサブネット: Virtual Cloud Network (VCN) は、指定した Oracle リージョン内の OCI テナンシーにセットアップするカスタマイズ可能なプライベートネットワークです。コンピュートインスタンス、データベース、ストレージなどの OCI リソースをデプロイ・管理するための安全でスケーラブルなネットワーク環境を提供します。VCN はサブネット、ルートテーブル、ゲートウェイなどの主要コンポーネントを含む従来型ネットワークの仮想版です。VCN により、論理的に分離されたネットワーク内でクラウドリソースを分離・セグメント化し、セキュリティと管理性を向上できます。VCN はサブネットに分割され、リソースのセグメント化とトラフィック制御をより細かく行えます。サブネットはパブリック (パブリック IP アドレスとインターネットアクセスを許可) またはプライベート (直接のインターネットアクセスを制限) にできます。Oracle マルチクラウドアーキテクチャでは、AWS リージョンにクライアントサブネットとバックアップサブネットを持つ ODB ネットワークを作成すると、ペアリングされた OCI リージョンの OCI テナンシーに対応する OCI VCN とサブネットが自動的に作成されます。
  • OCI リージョン (Parent Site): OCI リージョンは、アベイラビリティドメインと呼ばれる 1 つ以上のデータセンターを持つ地理的エリアです。Oracle マルチクラウドモデルでは、ペアリングされた AWS リージョンに接続する OCI リージョンを Parent Site と呼びます。ODB@AWS はリージョン可用性で説明されているリージョンでのみ利用できます。各 OCI リージョンは他のリージョンとは独立して動作し、耐障害性と災害復旧機能を提供します。各リージョンは 1 つ以上のアベイラビリティドメインで構成されます。OCI アベイラビリティドメイン (AD) は OCI リージョン内の 1 つ以上のデータセンターです。複数の AD があるリージョンでは、AD は物理的に分離されています。インフラストラクチャ、電源、冷却、内部ネットワークを共有しないため、1 つの AD の障害が同じリージョン内の他の AD に影響する可能性は低いです。
  • OCI Child Site: OCI Child Site は、OCI アベイラビリティドメイン (AD) を AWS リージョン内のアベイラビリティゾーン (AZ) に拡張するデータセンターです。OCI Child Site モデルでは、Oracle Database@AWS に使用される Exadata インフラストラクチャは物理的には AWS データセンター (AWS リージョン内の AZ) に存在しますが、論理的には OCI リージョンとそのネットワークコンポーネントにマッピングされます。
  • ODB ネットワーク: ODB ネットワークは、指定した AWS アベイラビリティゾーン (AZ) 内で Oracle Exadata VM クラスターと Autonomous VM クラスターをホストするプライベートな分離されたネットワークです。ODB ネットワークは IP アドレスの CIDR 範囲で構成されます。ODB ネットワークは OCI Child Site 内のネットワークに直接マッピングされ、AWS と OCI 間の通信を可能にします。Oracle マルチクラウドアーキテクチャでは、ODB ネットワークは Oracle Database@AWS サービスの一部である OCI コンポーネントへのネットワーク接続を提供します。ODB ネットワーク作成時に指定する情報は以下のとおりです。
    1. アベイラビリティゾーン — ODB ネットワークは特定の AZ に紐づきます。本記事執筆時点では、以下の AWS リージョンで Oracle Database@AWS を利用できます。
      US East (N. Virginia)
      物理 ID use1-az4 および use1-az6 の AZ を使用できます。
      US West (Oregon)
      物理 ID usw2-az3 および usw2-az4 の AZ を使用できます。
      Asia Pacific (Tokyo)
      物理 ID apne1-az1 および apne1-az4 の AZ を使用できます。
      US East (Ohio)
      物理 ID use2-az1 および use2-az2 の AZ を使用できます。
      Europe (Frankfurt)
      物理 ID euc1-az1 および euc1-az2 の AZ を使用できます。アカウント内で上記の物理 AZ ID にマッピングされる論理 AZ 名を確認するには、次のコマンドを実行します。

      aws ec2 describe-availability-zones \
       --region us-east-1 \
      --query "AvailabilityZones[*].{ZoneName:ZoneName, ZoneId:ZoneId}" \
      --output table
    2. クライアント CIDR アドレス — ODB ネットワークには、Exadata VM クラスターと Autonomous VM クラスター用のクライアントサブネット CIDR が必要です。
    3. バックアップ CIDR アドレス — ODB ネットワークには、VM クラスターのマネージドデータベースバックアップ用のバックアップサブネット CIDR が必要です。バックアップサブネットは Exadata VM クラスターではオプションです。
    4. AWS サービス統合 — Amazon S3 や Amazon Redshift との zero-ETL など、AWS サービス統合のネットワークパスを設定できます。詳細は AWS サービス統合を参照してください。CIDR 要件の詳細は ODB ネットワークの作成を参照してください。
  • Oracle Exadata インフラストラクチャ: Oracle Exadata インフラストラクチャは、Oracle データベース実行用に設計された高性能で統合されたハードウェア・ソフトウェアプラットフォームです。Exadata は事前構成・事前テスト済みのフルスタックプラットフォームであり、必要なハードウェアとソフトウェアコンポーネントがすべて統合・最適化されシームレスに連携します。Exadata はスケールアウトアーキテクチャを採用し、データベースサーバーとインテリジェントストレージサーバーを変化するワークロード要求に応じて個別にスケールできます。Exadata ストレージサーバーは従来型ストレージを超え、独自の CPU と専用ソフトウェアにより、SQL クエリ処理などのデータベース操作をデータの近くで実行できます。Exadata は高帯域幅・低レイテンシーのネットワークファブリック (RDMA over Converged Ethernet / RoCE など) を使ってデータベースサーバーとストレージサーバーを接続し、高速なデータアクセスと転送を実現します。Oracle マルチクラウドアーキテクチャでは、Exadata インフラストラクチャは Oracle Exadata Database Service と Oracle Autonomous AI Database の両方の基盤ハードウェアです。Oracle Database@AWS で Exadata インフラストラクチャを作成する際に指定する情報は以下のとおりです。

    詳細は Exadata インフラストラクチャを参照してください。

  • Exadata VM クラスター: Exadata VM クラスターは、密結合された Exadata VM のセットです。各 VM には Oracle Real Application Clusters (Oracle RAC) や Oracle Grid Infrastructure など Oracle Enterprise Edition のすべての機能を含む完全な Oracle データベースインストールがあります。VM クラスター上に 1 つ以上の Oracle Exadata データベースを作成できます。VM と VM クラスターのアーキテクチャ図は Exadata Database Service on Dedicated Infrastructure Technical Architecture を参照してください。VM クラスター作成時に指定する情報は以下のとおりです。
    • ODB ネットワーク
    • Oracle Exadata インフラストラクチャ
    • クラスター内の VM を配置するデータベースサーバー
    • 使用可能な Exadata ストレージの合計量

    作成方法の詳細は Exadata VM クラスターを参照してください。

  • Autonomous VM クラスター: Autonomous VM クラスター (AVMC) は、物理的な Exadata クラスター (マシン) を複数の仮想クラスターに分割できます。個別のアクセスルール、ネットワーク設定、カスタマイズ可能なコンピュートメモリやストレージリソースにより、異なるデータベースワークロードの環境を分離できます。AVMC は、Autonomous Container Database が構築される 4 層データベースアーキテクチャモデルのインフラストラクチャコンポーネントの 1 つです。Exadata Infrastructure (EI) リソース内に 1 つ以上の AVMC がプロビジョニングされ、EI とデプロイ内の Autonomous Container Database リソースを接続します。Autonomous VM クラスター作成時に VM あたりの ECPU コア数、CPU あたりのデータベースメモリ、データベースストレージ、Autonomous Container Database の最大数を設定できます。詳細は Autonomous VM クラスターの作成を参照してください。
  • ODB ピアリング: ODB ピアリングは、Amazon VPC と ODB ネットワーク間でトラフィックをプライベートにルーティングするためのユーザー作成のネットワーク接続です。Oracle マルチクラウドアーキテクチャでは、VPC 内のアプリケーションと ODB ネットワーク内の Oracle データベース間のトラフィックは、パブリックインターネットを経由せず ODB ピアリングを通じてプライベートにルーティングされます。詳細は ODB ピアリング接続の作成を参照してください。
  • Oracle Exadata データベース: Oracle Database@AWS では、AWS コンソールを使って Exadata データベースをホストする Oracle Exadata インフラストラクチャと VM クラスターを作成します。Oracle データベースの作成と管理には OCI API を使用します。データベースの作成方法の詳細は Exadata データベースAutonomous Database を参照してください。

Oracle Database@AWS のコンポーネントの詳細はアーキテクチャを参照してください。

上記リソースの作成手順の詳細は Oracle Database@AWS でのリソース作成を参照してください。

前提条件

開始前に、以下の前提条件を満たしていることを確認してください。

以下の AWS CloudFormation テンプレートを使って Oracle Database@AWS のさまざまなリソースをプロビジョニングできます。ビジネス要件に応じてパラメータをカスタマイズしてください。各パラメータの意味と許容値を理解することが重要です。

本記事執筆時点で利用可能なテンプレートは以下のとおりです。最新情報は AWS CloudFormation による Oracle Database@AWS のプロビジョニングを参照してください。

ステップ 1: Oracle Database@AWS に ODB ネットワークを作成する

Type: AWS::ODB::OdbNetwork
Properties:
  AvailabilityZone: String
  AvailabilityZoneId: String
  BackupSubnetCidr: String
  ClientSubnetCidr: String
  CustomDomainName: String
  DefaultDnsPrefix: String
  DeleteAssociatedResources: Boolean
  DisplayName: String
  S3Access: String
  S3PolicyDocument: String
  Tags: 
    - Tag
  ZeroEtlAccess: String

IP アドレス要件の詳細は Oracle Database@AWS での IP アドレス空間の計画を参照してください。

ステップ 2: Oracle Database@AWS に Oracle Exadata インフラストラクチャを作成する

Type: AWS::ODB::CloudExadataInfrastructure
Properties:
  AvailabilityZone: String
  AvailabilityZoneId: String
  ComputeCount: Integer
  CustomerContactsToSendToOCI: 
    - CustomerContact
  DatabaseServerType: String
  DisplayName: String
  MaintenanceWindow: 
    MaintenanceWindow
  Shape: String
  StorageCount: Integer
  StorageServerType: String
  Tags: 
    - Tag

ステップ 3: Oracle Database@AWS に Exadata VM クラスターまたはAutonomous VM クラスターを作成する

 Type: AWS::ODB::CloudVmCluster
Properties:
  CloudExadataInfrastructureId: String
  ClusterName: String
  CpuCoreCount: Integer
  DataCollectionOptions: 
    DataCollectionOptions
  DataStorageSizeInTBs: Number
  DbNodes: 
    - DbNode
  DbNodeStorageSizeInGBs: Integer
  DbServers: 
    - String
  DisplayName: String
  GiVersion: String
  Hostname: String
  IsLocalBackupEnabled: Boolean
  IsSparseDiskgroupEnabled: Boolean
  LicenseModel: String
  MemorySizeInGBs: Integer
  OdbNetworkId: String
  ScanListenerPortTcp: Integer
  SshPublicKeys: 
    - String
  SystemVersion: String
  Tags: 
    - Tag
  TimeZone: String
        
Type: AWS::ODB::CloudAutonomousVmCluster
Properties:
  AutonomousDataStorageSizeInTBs: Number
  CloudExadataInfrastructureId: String
  CpuCoreCountPerNode: Integer
  DbServers: 
    - String
  Description: String
  DisplayName: String
  IsMtlsEnabledVmCluster: Boolean
  LicenseModel: String
  MaintenanceWindow: 
    MaintenanceWindow
  MemoryPerOracleComputeUnitInGBs: Integer
  OdbNetworkId: String
  ScanListenerPortNonTls: Integer
  ScanListenerPortTls: Integer
  Tags: 
    - Tag
  TimeZone: String
  TotalContainerDatabases: Integer

ステップ 4: ODB ピアリング接続を作成する

Type: AWS::ODB::OdbPeeringConnection
Properties:
  DisplayName: String
  OdbNetworkId: String
  PeerNetworkId: String
  Tags: 
    - Tag

CloudFormation スタックの作成

AWS CloudFormation でリソースをプロビジョニングするには、以下の手順を実行します。この CloudFormation テンプレートは以下のリソースを作成します。

  • VPC
  • インターネットゲートウェイ
  • パブリックサブネット 2 つ
  • プライベートサブネット 2 つ
  • パブリックルートテーブル
  • プライベートルートテーブル
  • パブリックルート
  • 4 つのサブネットすべてへのルートテーブルアソシエーション
  • ODB ネットワーク
  • ODB ピアリング接続
  • Exadata インフラストラクチャ
  • Exadata VM クラスター
  • Autonomous VM クラスター

デプロイ前にテンプレートをよく確認し、不要なリソースがあればテンプレートを適宜修正してください。

  1. ローカルマシンに GitHub リポジトリをクローンするか、AWS Samples からスクリプトをダウンロードします。
  2. GitHub の readme に従って前提条件を確認し、CloudFormation スタックをデプロイします。
  3. スタックのデプロイが完了したことを確認します。

重要: AWS CloudFormation で ODB@AWS をデプロイする際、特定のリソースプロパティの変更はインプレース更新ではなく完全なリソース置換が必要になることに注意してください。CpuCoreCount や DbServers の設定などのプロパティを変更すると置換がトリガーされます。変更を実装する前に、置換が必要なプロパティの完全なリストについて AWS CloudFormation ドキュメントを確認してください。

リソースの作成が完了したら、以下の方法で AWS Virtual Private Cloud (VPC) と Oracle Database@AWS の ODB ネットワーク間の接続を設定します。

  1. OdbPeeringConnection 用の VPC ルートテーブルの設定
  2. Oracle Database@AWS 用の DNS の設定
    • アウトバウンドエンドポイント — ODB ネットワークに DNS クエリを送信するために必要です。
    • リゾルバールール — Route 53 Resolver が ODB ネットワークの DNS に転送する DNS クエリのドメイン名を指定します。

詳細はネットワーク設定を参照してください。

クリーンアップ

このセットアップが不要になり将来の課金を避けたい場合は、セットアップで作成した ODB ネットワーク、Exadata インフラストラクチャ、VM クラスターのリソースを削除できます。AWS CloudFormation スタックの一部として起動したその他のリソースをすべて削除するには、以下の手順を実行します。

  1. AWS CloudFormation コンソールのナビゲーションペインでスタックを選択します。
  2. 作成したスタックを選択し、削除を選択します。
  3. プロンプトが表示されたらスタックの削除を選択します。

詳細は AWS CloudFormation コンソールでのスタックの削除を参照してください。

まとめ

本記事では、AWS CloudFormation を使って Oracle Database@AWS のリソースをデプロイする方法を紹介しました。

開始方法の詳細は Oracle Database@AWS の開始方法を参照してください。

著者について

Javeed Mohammed

Javeed Mohammed

Javeed は、AWS のシニアデータベーススペシャリストソリューションアーキテクトです。Amazon RDS チームで Oracle や Db2 などの商用データベースエンジンを担当し、お客様の AWS クラウドでのリレーショナルデータベースワークロードの設計、デプロイ、最適化を支援しています。

Sharath Chandra Kampili

Sharath Chandra Kampili

Sharath は、AWS のデータベーススペシャリストソリューションアーキテクトです。Amazon RDS チームで Oracle などの商用データベースエンジンを担当し、お客様のデータベースプロジェクトに対するガイダンスと技術支援を直接提供しています。

Kai Sawamoto

Kai Sawamoto

Kai は、Oracle Database@AWS チームのソフトウェア開発エンジニアです。ODB と CloudFormation の統合を担当し、CloudFormation との追加機能統合のメンテナンスと提供に取り組んでいます。


この記事は Solutions Architect の 矢木 覚 が翻訳しました。