リバース SSH トンネルを使用して接続を構成する

セキュアなリバース SSH トンネルを介して、宛先データベースからソース データベースへの接続を確立できます。この方法では、 Google Cloud プロジェクトの踏み台インスタンス VM と、ソース データベースに接続できるマシン(ネットワーク上のノートパソコンなど)が必要です。

Database Migration Service は、移行の作成時に必要な情報を収集し、すべてを設定するためのスクリプトを自動生成します。

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

リバース SSH トンネルを設定する

次の手順は、 移行ジョブの作成の Database Migration Service フローで実行され、ソース データベースと Cloud SQL インスタンスの間にリバース SSH トンネルを設定します。いくつかのパラメータを指定したら、ソース データベースと Google Cloudの両方に接続できるマシンで一連の gcloud コマンドを実行します。

  1. ソース データベースと Cloud SQL インスタンス間の接続を確立するために使用する VM インスタンスを選択します。通常、これは、新しい Cloud SQL データベースにアクセスするアプリケーションが実行されている VPC で実行されている VM です。VM インスタンスは、SSH トンネルの踏み台サーバーとして機能します。
  2. この目的には、既存の Compute Engine VM インスタンスを使用できます。

    1. リストから Compute Engine VM インスタンスを選択します。

    2. SSH トンネルで使用できる空きポートを指定します。

  3. または、このステップで新しい VM を作成することもできます。CREATE A COMPUTE ENGINE VM INSTANCE を選択すると、生成されたスクリプトに作成手順が含まれます。

    1. VM インスタンスの名前を指定します。

    2. VM のマシンタイプを選択します。

    3. VM のサブネットを指定する

  4. [スクリプトを表示] をクリックして、生成されたスクリプトを表示します。

  5. ソース データベースと Compute Engine VM の両方にアクセスできるマシンでスクリプトを実行します。このスクリプトは、次の操作を実行します。

    • Compute Engine VM を SSH トンネル踏み台サーバーとして構成します。

    • 踏み台インスタンスのポートからソースの PostgreSQL データベース サーバー(ポート 5432)にトラフィックを転送する安全な SSH 接続を確立します。

    • 新しい Compute Engine VM を作成する場合は、スクリプトを正常に実行した後、スクリプト出力から VM サーバーの IP をコピーし、指定されたテキスト フィールドに入力します。Cloud SQL インスタンスは、後で移行ジョブをテストまたは開始するときに、必要に応じて更新されます。

  6. [構成して続行] をクリックします。

  7. 移行ジョブを確認して、移行元のデータベース インスタンスから移行先の Cloud SQL データベース インスタンスにデータが正しく移行されたことを確認します。

  8. ネットワーク アーキテクチャによっては、システムに追加の VPN ゲートウェイを設定する必要があります。詳細については、Cloud VPN ドキュメントの Google Cloud と AWS の間に HA VPN 接続を作成するまたは Google Cloud と Azure の間に HA VPN 接続を作成するをご覧ください。

  9. 移行ジョブが構成され、接続性が確認され、必要に応じて VPN が正常に構成されたら、ジョブを実行できます。