27.ある企業が、ビジネスクリティカルなアプリケーションをAWS上に移行しようとしている。このアプリケーションは、Oracleデータベースを使用した従来の3層のWebアプリケーションである。データは転送中と停止中に暗号化されなければならない。データベースは12TBのデータをホストしている。内部経由でのソースOracleデータベースへのネットワーク接続は許可されており、可能な限りAWSマネージドサービスを使用することで運用コストを削減したいと考えている。すべてプライマリキーのみ。ただし、BLOB(Binary Large Object)フィールドが多数含まれている。そのため
A. Amazon RDS for Oracleインスタンスをプロビジョニングする。インターネットにアクセスできる仮想プライベートクラウド(VPC)サブネット内にRDSデータベースをホストし、RDSデータベースをソースデータベースの暗号化された読み取りレプリカとして設定します。SSLを使用して、2つのデータベース間の接続を暗号化します。RDS ReplicaLagメトリックを監視して、レプリケーションパフォーマンスを監視します。アプリケーションのメンテナンスウィンドウで、オンプレミスデータベースをシャットダウンし、レプリケーションの遅延がなくなったら、アプリケーションの接続をRDSインスタンスに切り替えます。リードレプリカをスタンドアロンデータベースインスタンスにプロモートします。
B. Amazon EC2インスタンスをプロビジョニングし、同じOracleデータベースソフトウェアをインストールする。サポートされているツールを使用して、ソースデータベースのバックアップを作成する。アプリケーションのメンテナンスウィンドウの間に、EC2インスタンスで実行されているOracleデータベースにバックアップをリストアする。Amazon RDS for Oracleインスタンスをセットアップし、AWSでホストされているデータベースとの間でインポートジョブを作成する。ジョブが完了したら、ソースデータベースをシャットダウンし、データベース接続をRDSインスタンスに切り替えます。
C. AWS DMSを使用して、オンプレミスのOracleデータベースとAWSでホストされているレプリケーションインスタンス間でデータセットをロードし、レプリケートする。透過的データ暗号化(TDE)を有効にしたAmazon RDS for Oracleインスタンスをプロビジョニングし、レプリケーションインスタンスのターゲットとして構成します。顧客が管理するAWS KMSマスターキーを作成し、レプリケーションインスタンスの暗号化キーとして設定します。AWS DMS タスクを使用して、ターゲット RDS インスタンスにデータをロードします。アプリケーションのメンテナンスウィンドウの間、およびロードタスクが進行中のレプリケーションフェーズに達した後、データベース接続を新しいデータベースに切り替えます。
D. アプリケーションのメンテナンスウィンドウ中に、オンプレミスのOracleデータベースに圧縮されたデータベースのフルバックアップを作成します。バックアップの実行中に、10GbpsのAWS Direct Connect接続をプロビジョニングして、Amazon S3へのデータベースバックアップファイルの転送速度を向上させ、メンテナンスウィンドウの期間を短縮します。SSL/TLSを使用して、Direct Connect接続を介してファイルをコピーします。バックアップファイルが正常にコピーされたら、メンテナンスウィンドウを開始し、Amazon RDSがサポートするツールのいずれかを起動して、暗号化を有効にして新しくプロビジョニングされたAmazon RDS for Oracleインスタンスにデータをインポートします。データが完全にロードされるまで待ち、データベース接続を新しいデータベースに切り替えます。不要な料金を削減するために、Direct Connect接続を削除します。