ソース データベース接続のネットワーク方法

移行元データベース サーバーから移行先 Cloud SQL for PostgreSQL インスタンスにデータを移動するには、Database Migration Service が移行元インスタンスに接続する必要があります。この接続は、公共のインターネットを介して、またはプロジェクトの Virtual Private Cloud(VPC)内の一連のプライベート接続を介して確立できます。

このページでは、使用可能な各ソース データベース接続方法の概要と、移行に適したソリューションを選択するのに役立つ推奨事項のセクションについて説明します。

さまざまな接続方法とその要件を理解したら、 ディシジョン ツリー図を使用して、シナリオに適したソリューションを選択できます。

メソッドの比較

接続方法ごとにメリットと要件が異なります。次の表で概要を比較し、各方法の専用セクションで詳細を確認してください。

ネットワーキングの方式 利点 欠点
IP 許可リスト
  • 設定が最も簡単な接続方法。
  • ソース データベースに Google Cloudのプライベート ネットワーク経由でアクセスできない場合に便利です。
  • ソース データベース サーバーの IPv4 アドレスを公共のインターネットに公開する必要があります。これには追加のセキュリティ対策が必要です。たとえば、接続を保護するために TLS 証明書とファイアウォール ルールを使用することをおすすめします。
  • ファイアウォール ルールの構成で IT 部門のサポートが必要になる場合がある。
  • Database Migration Service は、Oracle Real Application Clusters(RAC)環境の単一クライアント アクセス名(SCAN)機能を使用するデータベースへの直接接続をサポートしていません。このような環境でパブリック IP 許可リスト接続を使用するための解決策については、 Oracle SCAN エラーのトラブルシューティングをご覧ください。
フォワード SSH トンネル
  • IP 許可リストを使用してパブリック IP 経由で接続するよりも安全です。

    初期接続は、パブリック インターネット経由の Secure Shell(SSH)ポートを介して確立されます。接続がアクティブになると、すべてのトラフィックが安全なプライベート接続を介して転送されます。

  • ソース データベースに Google Cloudのプライベート ネットワーク経由でアクセスできないが、ソース データベース サーバーをパブリック インターネットに直接公開したくない場合に便利です。
  • 接続に中間サーバー(転送 SSH トンネル マシン)を使用すると、レイテンシが増加する可能性があります。
  • 転送 SSH ホストサーバーを設定して維持する必要があります。移行期間中はサーバーをオンライン状態にする必要があります。
Private Service Connect インターフェース
  • ネットワーク アタッチメントを使用して、ソースのプライベート IP への接続を確立します。このメソッドでは、VPC のピアリング割り当ては消費されません。
  • 構成が最も簡単な移行元のプライベート接続方法。
  • ネットワーク アタッチメントの設定とファイアウォール ルールの調整が必要です。
  • 接続を確立した後にネットワーク アタッチメントを変更することはできません。
Virtual Private Cloud ピアリングによるプライベート接続 接続は、VPC ピアリングを介してソース データベースのプライベート IP アドレスに確立されます。VPC に十分なピアリング割り当てがない場合、この接続方法の使用は困難になる可能性があります。ほとんどの場合、代わりに Private Service Connect インターフェースを使用したプライベート接続を使用することをおすすめします。

ソース データベース接続用の IP 許可リスト

IP 許可リスト接続方法を使用すると、Database Migration Service は移行元データベース サーバーの一般公開されている IP アドレスへの接続を確立しようとします。

IP 許可リスト接続の要件

この接続方法を使用するには、大まかに次のことを確認する必要があります。

  • ソースの IP アドレスをパブリック インターネットに公開する必要があります(直接、または ドメイン ネームサーバー(DNS)を介して一般に認識されるホスト名を使用)。

  • Database Migration Service は、Oracle Real Application Clusters(RAC)環境の単一クライアント アクセス名(SCAN)機能を使用するデータベースへの直接接続をサポートしていません。このような環境でパブリック IP 許可リスト接続を使用する場合の解決策については、 Oracle SCAN エラーのトラブルシューティングをご覧ください。
  • Database Migration Service パブリック IP アドレスからの受信接続を許可する必要があります。

  • 省略可: IP 許可リスト接続では、デフォルトで暗号化されていない接続が使用されます。TLS 証明書を使用して接続を保護することをおすすめします。Database Migration Service は、さまざまな TLS タイプをサポートしているため、移行元データベースでサポートされている内容に応じて最適なソリューションを選択できます。詳細については、 SSL/TLS 証明書を使用してネットワーク接続を暗号化するをご覧ください。

IP 許可リストの接続を構成する

パブリック IP 接続の構成に必要な手順は、移行元データベースのタイプによって異なります。詳しくは以下をご覧ください。

ソース データベース接続用のフォワード SSH トンネル

この接続方法は、パブリック ネットワーク接続とプライベート ネットワーク接続の混合です。接続自体は、Secure Shell(SSH)ポートを介してトンネル ホストサーバーのパブリック IP アドレスに確立されます。接続がアクティブになると、すべてのトラフィックは安全なトンネルを介して移行元データベースのプライベート IP アドレスに転送されます。

専用の SSH トンネル サーバーを介した高レベルの接続設定を示すネットワーク図。
図 2.移行ネットワーキングの例: SSH トンネル経由のソース接続。(クリックして拡大)
専用の SSH トンネル サーバーを介した高レベルの接続設定を示すネットワーク図。

フォワード SSH トンネルの要件

接続を作成するには、トンネル サーバーで SSH ポートをパブリック インターネットに公開する必要があります。接続が確立されると、すべてのトラフィックがプライベート トンネル接続経由でルーティングされます。

ソース データベースをホストしている同じサーバーでトンネルを終端することもできますが、専用のトンネル サーバーを使用することをおすすめします。これにより、ソース データベースが公共のインターネットに直接公開されることはありません。トンネル サーバーには、SSH を使用してインターネットからアクセスでき、ソース データベースにアクセスできる Unix または Linux ホストを指定できます。

特定の接続シナリオでは、転送 SSH トンネルではなく、 Virtual Private Cloud ピアリングを使用したプライベート接続のネットワーキング方法を使用することをおすすめします。

  • Google Cloud内に存在するセルフホスト型の移行元の場合、Database Migration Service はプライベート接続構成を使用して移行元データベースのプライベート IP にアクセスできます。接続を確立するために別の SSH サーバーを設定する必要はありません。

フォワード SSH トンネルの接続を構成する

転送 SSH トンネルを介した接続を構成するには、ソース データベースのタイプに応じて異なる手順が必要です。詳しくは以下をご覧ください。

Private Service Connect インターフェースを使用したプライベート接続

Private Service Connect インターフェースを使用すると、Database Migration Service は、独自の IP アドレスのピアリング割り当てを消費せずに、移行元データベースのプライベート IP への接続を開始できます。代わりに、この接続方法では、VPC で作成したネットワーク アタッチメントを使用します。

専用の SSH トンネル サーバーと Private Service Connect インターフェースを介した高レベルの接続設定を示すネットワーク図。
図 3. 移行ネットワーキングの例: 他のクラウド サービスにあるソースの Private Service Connect インターフェースと Cloud VPN を使用したプライベート IP ソース接続。(クリックして拡大)
専用の SSH トンネル サーバーと Private Service Connect インターフェースを介した高レベルの接続設定を示すネットワーク図。

Private Service Connect インターフェースの要件

この接続方法では、ソース データベースにアクセスできる VPC ネットワークにネットワーク アタッチメントを作成する必要があります。ネットワーク アタッチメントのサブネットには、使用可能な IP アドレスが 6 つ必要です(つまり、合計 8 個の IP アドレスに /29 範囲を使用する必要があります)。移行シナリオに対応できる十分なアドレスがある場合は、複数の移行ジョブに同じネットワーク アタッチメントを使用できます。

目的地必要な IP アドレスの数
Cloud SQL ゾーン インスタンス 1 件のアドレス
Cloud SQL 高可用性(HA)インスタンス 2 件のアドレス

Private Service Connect インターフェースを使用してプライベート IP 接続を構成する

Private Service Connect インターフェースでプライベート IP 接続を使用するには、ネットワーク アタッチメントを作成する Virtual Private Cloud からソース データベースのプライベート IP にアクセスできる必要があります。さまざまなデータベース ソースに対してこのプライベート IP 接続方法を構成する方法については、以下をご覧ください。

VPC ピアリングによるプライベート接続

この方法では、Virtual Private Cloud(VPC)のプライベート IP アドレスを介してソースに接続できます。この方法を使用するためにインターフェースをパブリック インターネットに公開する必要はありませんが、 Google Cloud VPC からソース データベースの IP アドレスまたはホスト名にアクセスできる必要があります。

この接続方法では、ソース データベースに応じて、追加のネットワーク コンポーネント(Cloud VPN やリバース プロキシ VM など)の設定が必要になる場合があります。

専用の SSH トンネル サーバーを介した高レベルの接続設定を示すネットワーク図。
図 4. 移行ネットワークの例: Google Cloudの外部にあるマネージド ソースの Virtual Private Cloud ピアリングと Cloud VPN を使用したプライベート IP ソース接続。(クリックして拡大)
専用の SSH トンネル サーバーを介した高レベルの接続設定を示すネットワーク図。

プライベート IP 接続の要件

この接続方法は、 Google Cloud VPC ネットワークからプライベート IP アドレスにアクセスできるソースに最適です。 Google Cloudに存在するセルフホスト ソースの場合は、Database Migration Service の プライベート接続構成を使用して、直接ピアリング接続を確立できます。他のタイプのソースでは、Cloud VPN や リバース プロキシ VM(またはその両方)などの追加のネットワーク コンポーネントが必要になる場合があります。

プライベート IP 接続には、次のものが必要です。

VPC ピアリングを使用してプライベート IP 接続を構成する

Virtual Private Cloud ピアリングでプライベート IP 接続を使用するには、ソース データベースのプライベート IP が Virtual Private Cloud から到達可能である必要があります。ネットワーク アーキテクチャによっては、リバース プロキシ VM や Cloud VPN などの追加コンポーネントが必要になることがあります。

さまざまなデータベース ソースのプライベート IP 接続の構成の詳細については、以下をご覧ください。

ソース ネットワーク接続のディシジョン ツリー

サポートされているすべてのソース接続方法とその要件を理解したら、図の質問に沿って、シナリオに適した接続方法を選択できます。

適切な接続方法を選択するためのガイドとなる質問を含むディシジョン ツリーの図。
図 5. ソース ネットワーク接続のディシジョン ツリー。

次のステップ