例: Aurora PostgreSQL と AWS Database Migration Service を使用した論理レプリケーション - Amazon Aurora

例: Aurora PostgreSQL と AWS Database Migration Service を使用した論理レプリケーション

AWS Database Migration Service 「AWS DMS」 を使用してデータベースまたはその一部をレプリケートできます。AWS DMS を使用して、Aurora PostgreSQL データベースから、別のオープンソースデータベースまたは商用データベースにデータを移行させます。AWS DMS の詳細については、『AWS Database Migration Service ユーザーガイド』を参照してください。

次の例では、Aurora PostgreSQL データベースからの (パブリッシャーとしての) 論理的なレプリケーションを設定し、次に移行のために AWS DMS を使用する方法を示します。この例では、「例: Aurora PostgreSQL DB クラスターにおける論理レプリケーションの使用」で作成したのと同じパブリッシャーおよびサブスクライバーを使用しています。

AWS DMS で論理的なレプリケーションを設定するには、Amazon RDS のパブリッシャーとサブスクライバーに関する詳細が必要です。特に、パブリッシャーの書き込み DB インスタンスとサブスクライバーの DB インスタンスに関する詳細が必要です。

パブリッシャーの書き込み DB インスタンスについては以下の情報を取得します。

  • 仮想プライベートクラウド (VPC) の識別子

  • サブネットグループ

  • アベイラビリティーゾーン (AZ)

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

  • DB インスタンス ID

サブスクライバーの DB インスタンスについては以下の情報を取得します。

  • DB インスタンス ID

  • 出典エンジン

Aurora PostgreSQL での論理的なレプリケーションに AWS DMS を使用するには
  1. AWS DMS を使用するようにパブリッシャーデータベースを準備します。

    これを行うには、PostgreSQL 10.x 以降のデータベースで、AWS DMS ラッパー関数をパブリッシャーデータベースに適用する必要があります。このステップと以降のステップの詳細については、AWS Database Migration Service ユーザーガイドのAWS DMS のソースとして PostgreSQL バージョン 10.x 以降を使用する」を参照してください。

  2. AWS Management Console にサインインして、AWS DMS で https://console.aws.amazon.com/dms/v2 コンソールを開きます。右上で、パブリッシャーとサブスクライバーがある同じ AWS リージョンを選択します。

  3. AWS DMS レプリケーションインスタンスを作成します。

    パブリッシャーの書き込み DB インスタンスと同じ値を選択します。これらには、以下の設定が含まれます。

    • VPC」 で、書き込み DB インスタンスと同じ VPC を選択します。

    • Replication Subnet Group (レプリケーションのサブネットグループ)」 で、書き込み DB インスタンスと同じ値のサブネットグループを選択します。必要に応じて新規に作成してください。

    • アベイラビリティーゾーン」 で、書き込み DB インスタンスと同じゾーンを選択します。

    • VPC セキュリティグループ」 で、書き込み DB インスタンスと同じグループを選択します。

  4. 出典の AWS DMS エンドポイントを作成します。

    次の設定を使用して、パブリッシャーを出典エンドポイントとして指定します。

    • Endpoint type (エンドポイントタイプ)」 で 「Source endpoint (出典エンドポイント)」を選択します。

    • [Select RDS DB Instance (RDS DB インスタンスの選択)] を選択します。

    • RDS Instance (RDS インスタンス)」で、パブリッシャーの書き込み DB インスタンスの DB 識別子を選択します。

    • Source engine (出典エンジン)」 で 「postgres」 を選択します。

  5. ターゲットの AWS DMS エンドポイントを作成します。

    次の設定を使用して、サブスクライバーをターゲットエンドポイントとして指定します。

    • Endpoint type (エンドポイントタイプ)」 で 「Target endpoint (ターゲットエンドポイント)」 を選択します。

    • [Select RDS DB Instance (RDS DB インスタンスの選択)] を選択します。

    • [RDS Instance (RDS インスタンス)] で、サブスクライバーの DB インスタンスの DB 識別子を選択します。

    • [Source engine (出典エンジン)] の値を選択します。例えば、サブスクライバーが RDS PostgreSQL データベースの場合は、[postgres] を選択します。サブスクライバーが Aurora PostgreSQL データベースである場合は、[aurora-postgresql] を選択します。

  6. AWS DMS データベース移行タスクを作成します。

    データベース移行タスクを使用して、移行するデータベーステーブルを指定し、ターゲットスキーマを使用してデータをマッピングして、ターゲットデータベースで新しいテーブルを作成します。少なくとも、[Task configuration (タスクの設定)] で以下の設定を使用します。

    • [Replication instance (レプリケーションインスタンス)] で、前のステップで作成したレプリケーションインスタンスを選択します。

    • [Source database endpoint (出典データベースエンドポイント)] で、前のステップで作成したパブリッシャー出典を選択します。

    • [Target database endpoint (ターゲットデータベースエンドポイント)] で、前のステップで作成したサブスクライバーターゲットを選択します。

    タスクの残りの詳細は、移行プロジェクトに応じて異なります。DMS タスクのすべての詳細を指定する方法については、AWS Database Migration Service ユーザーガイドの「AWS DMS タスクの使用」を参照してください。

AWS DMS は、タスクを作成した後で、パブリッシャーからサブスクライバーへのデータの移行を開始します。