Amazon RDS for Oracle DB インスタンスを AMS を使用する他のアカウントに移行する - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon RDS for Oracle DB インスタンスを AMS を使用する他のアカウントに移行する

作成者: Pinesh Singal (AWS)

概要

このパターンは、Oracle DB インスタンス用の Amazon Relational Database Service (Amazon RDS) を、ある AWS アカウントから別の AWS アカウントに移行する方法を示しています。このパターンは、ソース AWS アカウントが AWS Managed Services (AMS) を使用していないが、ターゲットアカウントが AMS を使用するシナリオに適用されます。AWS マネジメントコンソールを使用してデータベース操作を実行する代わりに、AMS の変更要求 (RFC)を使用して移行を完了できます。この方法では、トランザクション数が多い数テラバイトの Oracle ソースデータベースのダウンタイムを最小限にできます。たとえば、400 ~ 900 GB のデータベースのダウンタイムは約 2 ~ 3 時間かかる可能性があります。データベースの移行時間は、Amazon RDS for Oracle DB インスタンスのサイズに直接比例します。

重要

このパターンでは、ソースアカウントの Amazon RDS for Oracle DB インスタンスのデータベーススナップショットを作成し、そのスナップショットを AMS を使用しているターゲットアカウントにコピーしてから、RFCs を生成してそのスナップショットから新しい DB インスタンスを作成する必要があります。

前提条件と制限

前提条件

  • ソースアカウントのアクティブな AWS アカウント

  • ターゲットアカウントに AMS を使用するアクティブな AWS アカウント

  • 稼働中の Amazon RDS for Oracle DB インスタンス

制限

  • ソースアカウントの DB インスタンスの同じプロパティまたは設定が、AMS の新しいターゲット DB インスタンスにコピーされます。

  • この移行アプローチで使用される RFC メソッドでは、Amazon RDS for Oracle をサポートする機能が限定されています。データベース移行をする AWS CloudFormation テンプレートを使用することで、Amazon RDS for Oracle の全機能にアクセスできます。

  • 移行は予定されたダウンタイム中に完了する必要があるため、アプリケーションは数時間停止する可能性があります。ダウンタイム中は、ソースアカウントの DB インスタンスを停止し、ターゲットアカウントの新しい DB インスタンスに移行します。

  • この移行方法は、同じ AWS アカウント内のある AWS リージョンから別のリージョンへの DB インスタンスの移行には適用されません。

製品バージョン

  • Oracle Database Standard Edition 2 (SE2) 12.1.0.2.v2 インスタンスおよび Amazon RDS for Oracle 以降

  • Amazon RDS for Oracle 11g はサポートされなくなりました (詳細については、Amazon RDS ドキュメントの Amazon RDS for Oracle を参照してください)。

アーキテクチャ

ソーステクノロジースタック

  • Amazon RDS for Oracle の Oracle Database SE 2 12.1.0.2.v2 インスタンス

  • Amazon RDS サブネットグループ

  • Amazon RDS オプショングループ (必要な場合)

  • Amazon RDS パラメータグループ (必要な場合)

  • Amazon Virtual Private Cloud (Amazon VPC) セキュリティグループ

  • AWS マネージドキーまたはカスタマーマネージドキーを搭載した AWS Key Management Service (AWS KMS)

  • AWS Identity and Access Management (IAM) ロール(必要な場合)

ターゲットテクノロジースタック

  • Amazon RDS for Oracle の Oracle Database SE 2 12.1.0.2.v2 インスタンス

  • Amazon RDS サブネットグループ

  • Amazon RDS オプショングループ (必要な場合)

  • Amazon RDS パラメータグループ (必要な場合)

  • Amazon VPC セキュリティグループ

  • AWS Managed Services (AMS)

  • AWS マネージドキーとカスタマーマネージドキーを搭載した AWS KMS

  • IAM ロール (必要な場合)

ソースとターゲットの移行アーキテクチャ

次の図は、ある AWS アカウントの Amazon RDS for Oracle DB インスタンスを、AMS を使用する別の AWS アカウントの Amazon RDS for Oracle DB インスタンスに移行を示しています。

Amazon RDS for Oracle DB インスタンスを AWS Managed Services を使用する別のアカウントに移行します。

この図表は、次のワークフローを示しています:

  1. ソースアカウントの Amazon RDS for Oracle DB インスタンスのデータベーススナップショットを作成します。

  2. ターゲットアカウントの AMS にスナップショットをコピーします。

  3. ターゲットアカウントのスナップショットから新しい Amazon RDS for Oracle DB インスタンスを作成します。

自動化とスケール

CloudFormation テンプレートと AMS で RFC を作成するを使用して、移行を自動化とスケールできます。CloudFormation を使用すると、スナップショットから Amazon RDS for Oracle DB インスタンスを作成するときに DB インスタンスを設定および復元する機能など、Amazon RDS for Oracle のすべての機能を使用できます。

ツール

エピック

タスク説明必要なスキル

カスタム AWS KMS キーを作成します。

  1. KMS キーを作成 という自動 RFC を作成して、ターゲットアカウントからカスタム KMS キーを作成します。

  2. 注記

    カスタム KMS キーをソースアカウントと共有します。: Amazon RDS のデフォルトの AWS マネージドキー () を使用する Amazon RDS for Oracle DB インスタンスを共有することはできませんaws/rds。代わりに、KMS キーから DB インスタンスを再暗号化して DB インスタンスを共有します。

AWS、AMS

セキュリティグループを作成します。

セキュリティグループを作成 という自動 RFC を作成して、ターゲットアカウントから VPC のセキュリティグループを作成します。

以下を必ず指定します。

  • 新しいセキュリティグループ名

  • TCP と UDP のイングレス/エグレスルール

  • 標準タグ

AWS、AMS

(オプション) Amazon RDS リソースを確認します。

Amazon RDS for Oracle DB インスタンスが作成されると、次のリソースが作成されます。

  • Amazon RDS サブネットグループ (サブネット ID に基づく)

  • Amazon RDS オプショングループ (ソース DB インスタンスのスナップショットに基づく)

  • Amazon RDS パタメータグループ (DB インスタンスのスナップショットに基づく)

DB インスタンスの作成時に作成された Amazon RDS リソースを確認すると、Oracle DB インスタンスに接続し、Amazon RDS コンソールでサブネットグループ、オプショングループ、およびパラメータグループを検索できます。

AWS
タスク説明必要なスキル

アプリケーションを停止します。

アプリケーションとその依存サービスを停止します。ソースアカウントのデータベースへのトラフィックをすべて停止する必要があります。

アプリ所有者

手動スナップショットを撮ります。

手動でソースアカウントの Amazon RDS for Oracle DB インスタンスの DB スナップショットを作成します

AWS

DB インスタンスを停止します。

Amazon RDS for Oracle DB インスタンスを停止します

AWS

スナップショットをコピーします。

同じソースアカウントに DB スナップショットをコピーし、ターゲットアカウントから共有されているカスタム KMS キーを使用して、コピーした DB スナップショットファイルを再暗号化します。

AWS

スナップショットを共有します。

ターゲットアカウントと新しいスナップショット(カスタム KMS キーを使用してコピー)を共有します

AWS
タスク説明必要なスキル

スナップショットをコピーします。

RDS スナップショットをコピー という自動 RFC を作成して DB スナップショットを同じターゲットアカウントにコピーし、再暗号化用に作成したデフォルトの AWS マネージド KMS キーを使用します。

これは、ターゲットアカウントを新しいスナップショットの所有者にし、必要に応じて、スナップショットから作成された Amazon RDS for Oracle DB インスタンスを有効化して、オプショングループに関連付ける場合に必要です。

AWS、AMS

スナップショットから DB インスタンスを作成します。

スナップショットから DB を作成という自動 RFC を作成して、スナップショットから Amazon RDS for Oracle DB インスタンスを作成します。

以下を必ず指定します。

  • 前の手順で作成した新しいスナップショットのID

  • VPC ID

  • サブネット ID

  • RDS インスタンス ID

  • 標準タグ

AWS、AMS

インスタンスをセキュリティグループにアタッチし、設定を更新します。

  1. その他を更新という手動 RFC を作成して、以前に作成した Amazon RDS for Oracle DB インスタンスを、以前に作成した VPC セキュリティグループにアタッチします。

  2. Amazon RDS for Oracle DB インスタンスの設定に追加変更をします。

AWS、AMS

DB インスタンスをテストします。

同じセキュリティグループでホストされているインスタンスまたはアプリケーションサーバーにログインし、telnet を使用して 1521 ポートに接続して、新しい Amazon RDS for Oracle DB インスタンスのエンドポイント接続をテストします。詳細については、Amazon RDS ドキュメントの Amazon RDS DB インスタンスへ接続するを参照してください。

注記

プライマリユーザーのログイン認証情報が利用可能な場合は、任意の SQL クライアント (Oracle SQL Developer など) からログインして Amazon RDS for Oracle DB インスタンスをテストできます。

AWS、DBA

関連リソース

追加情報

移行をロールバックする

移行をロールバックする場合は、以下の手順を完了します。

  1. ターゲットアカウントから手動で RFC (その他を更新) を作成して、ターゲットアカウントで作成したデータベーススタックを削除します。

  2. ソースアカウントの Amazon RDS for Oracle DB インスタンスを指すようにアプリケーション設定を更新します。

  3. ソースアカウントで Amazon RDS for Oracle DB インスタンスを起動します。