Azure Database for PostgreSQL での移行サービスに関するネットワーク ガイド

適用対象: Azure Database for PostgreSQL - フレキシブル サーバー

このドキュメントでは、移行サービスを使ってソース データベースを Azure Database for PostgreSQL に接続するためのさまざまなシナリオの概要について説明します。 シナリオごとに、移行のための接続を正しく確立するための、さまざまなネットワーク要件と構成を示します。 具体的な詳細は、ソース環境とターゲット環境の実際のネットワーク設定と要件によって異なります。

次の表では、移行サービスを使ってソース データベースを Azure Database for PostgreSQL に接続するための各シナリオをまとめています。 ソース環境とターゲット環境の構成に基づいて、各シナリオがサポートされているかどうかを示します。

PostgreSQL ソース 移行先 サポートされています
オンプレミスのパブリック IP パブリック アクセスを持つ Azure Database for PostgreSQL - フレキシブル サーバー はい
VPN/ExpressRoute を持つオンプレミスのプライベート IP VNet 統合型 Azure Database for PostgreSQL - フレキシブル サーバー はい
パブリック IP を持つ AWS RDS for PostgreSQL パブリック アクセスを持つ Azure Database for PostgreSQL - フレキシブル サーバー はい
VPN/ExpressRoute を介したプライベート アクセスを持つ AWS RDS for PostgreSQL VNet 統合型 Azure Database for PostgreSQL - フレキシブル サーバー はい
同じ/異なる仮想ネットワークに PostgreSQL がインストールされた Azure VM 同じ/異なる仮想ネットワークの VNet 統合型 Azure Database for PostgreSQL - フレキシブル サーバー はい
パブリック アクセスを持つ Azure Database for PostgreSQL - シングル サーバー VNet 統合型 Azure Database for PostgreSQL - フレキシブル サーバー はい
プライベート エンドポイントを持つ Azure Database for PostgreSQL - シングル サーバー VNet 統合型 Azure Database for PostgreSQL - フレキシブル サーバー はい
プライベート エンドポイントを持つ Azure Database for PostgreSQL - シングル サーバー プライベート エンドポイントを持つ Azure Database for PostgreSQL - フレキシブル サーバー はい
プライベート アクセスを持つオンプレミス/Azure VM/AWS プライベート エンドポイントを持つ Azure Database for PostgreSQL - フレキシブル サーバー はい
プライベート アクセスを持つオンプレミス/Azure VM/AWS パブリック アクセスを持つ Azure Database for PostgreSQL - フレキシブル サーバー いいえ

シナリオ 1: パブリック アクセスを使ってオンプレミス ソースから Azure Database for PostgreSQL に

ネットワーク確立の手順:

  • ソース データベース サーバーにはパブリック IP アドレスが必要です。
  • PostgreSQL ポート (既定値は 5432) でのアウトバウンド接続を許可するようにファイアウォールを構成します。
  • ソース データベース サーバーにインターネット経由でアクセスできることを確認します。
  • ターゲットの Azure Database for PostgreSQL からソース データベースへの接続をテストし、移行サービスがソース データにアクセスできることを確認して、ネットワーク構成を検証します。

シナリオ 2: Express Route または IPSec VPN 経由でプライベート IP オンプレミス ソースから仮想ネットワーク統合された Azure Database for PostgreSQL に

ExpressRoute または VPN Gateway を使用して Azure に接続されるオンプレミス データ センターのスクリーンショット。オンプレミス PostgreSQL サーバーは、Azure Database for PostgreSQL への安全なリンクを介して接続されます。

ネットワーク確立の手順:

  • オンプレミス ネットワークと Azure の間のセキュリティ保護された信頼性の高い接続のために、サイト間 VPN または ExpressRoute を設定します。
  • オンプレミスの IP 範囲からのアクセスを許可するように、Azure Virtual Network (仮想ネットワーク) を構成します。
  • PostgreSQL ポート (既定値は 5432) でのオンプレミス ネットワークからのトラフィックを許可するように、ネットワーク セキュリティ グループ (NSG) 規則を設定します。
  • ターゲットの Azure Database for PostgreSQL からソース データベースへの接続をテストし、移行サービスがソース データにアクセスできることを確認して、ネットワーク構成を検証します。

シナリオ 3: AWS RDS for PostgreSQL から Azure Database for PostgreSQL に

インターネット経由、または Express Route や AWS Direct Connect のような直接接続サービス経由で AWS RDS for PostgreSQL を Azure Database for PostgreSQL に接続する場合のスクリーンショット。

別のクラウド プロバイダー (AWS) のソース データベースには、パブリック IP または Azure への直接接続が必要です。

ネットワーク確立の手順:

  • パブリック アクセス:

    • AWS RDS のインスタンスにパブリックにアクセスできない場合は、Azure からの接続を許可するようにインスタンスを変更できます。 これを行うには、AWS 管理コンソールで [Publicly Accessible] (パブリック アクセス可能) の設定を [はい] に変更します。
    • AWS RDS セキュリティ グループで、Azure Database for PostgreSQL のパブリック IP アドレスまたはドメインからのトラフィックを許可するインバウンド規則を追加します。
  • プライベート アクセス

    • ExpressRoute または AWS から Azure への VPN を使って、セキュリティ保護された接続を確立します。
    • AWS RDS セキュリティ グループで、Azure Database for PostgreSQL のパブリック IP アドレスまたはドメインからのトラフィック、または Azure 仮想ネットワーク内の IP アドレスの範囲からのトラフィックを PostgreSQL ポート (既定値は 5432) で許可するインバウンド規則を追加します。
    • Azure Database for PostgreSQL を配置する仮想ネットワーク (Azure Virtual Network) を作成します。 AWS RDS インスタンスの IP アドレスへのアウトバウンド接続を PostgreSQL ポートで許可するように、仮想ネットワークのネットワーク セキュリティ グループ (NSG) を構成します。
    • クラウド プロバイダー AWS RDS の IP 範囲からの着信接続を許可するように、Azure で NSG 規則を設定します。
    • AWS RDS と Azure Database for PostgreSQL の間の接続をテストして、ネットワークの問題がないことを確認します。

シナリオ 4: Azure VM から Azure Database for PostgreSQL に (異なる仮想ネットワーク)

このシナリオでは、異なる仮想ネットワーク内にある Azure VM と Azure Database for PostgreSQL の間の接続について説明します。 仮想ネットワーク間のトラフィックを容易にするには、仮想ネットワーク ピアリングと適切な NSG 規則が必要です。

ある仮想ネットワークの Azure VM を別の仮想ネットワークの Azure Database for PostgreSQL に接続する場合のスクリーンショット。

ネットワーク確立の手順:

  • 2 つの VNet 間に仮想ネットワーク ピアリングを設定して、ネットワークを直接接続できるようにします。
  • PostgreSQL ポートで VNet 間のトラフィックを許可するように NSG 規則を構成します。

シナリオ 5: Azure VM から Azure PostgreSQL に (同じ仮想ネットワーク)

Azure VM と Azure Database for PostgreSQL が同じ仮想ネットワーク内にある場合、構成は簡単です。 PostgreSQL ポートで内部トラフィックを許可するように NSG 規則を設定する必要があります。トラフィックは仮想ネットワーク内に留まるため、Azure Database for PostgreSQL のためのファイアウォール規則を追加する必要はありません。

同じ仮想ネットワークの Azure VM を Azure Database for PostgreSQL に直接接続する場合のスクリーンショット。

ネットワーク確立の手順:

  • VM と PostgreSQL サーバーが同じ仮想ネットワーク内にあることを確認します。
  • PostgreSQL ポートで仮想ネットワーク内のトラフィックを許可するように NSG 規則を構成します。
  • 仮想ネットワーク内のトラフィックであるため、Azure Database for PostgreSQL のために他のファイアウォール規則は必要ありません。

シナリオ 6: Azure Database for PostgreSQL - シングル サーバーから VNet 統合型 Azure Database for PostgreSQL - フレキシブル サーバーへ

Azure Database for PostgreSQL - パブリック アクセスを持つシングル サーバーと VNet 統合型フレキシブル サーバーの間の接続を容易にするには、フレキシブル サーバーがデプロイされているサブネットからの接続を許可するようにシングル サーバーを構成する必要があります。 この接続を設定する手順の簡単な概要を次に示します。

シングル サーバーへの VNet 規則の追加:

  • Azure portal に移動し、PostgreSQL シングル サーバー インスタンスを開きます。

  • [接続のセキュリティ] 設定に移動します。

  • "仮想ネットワーク規則" のセクションを見つけて、[既存の仮想ネットワークを追加] を選択します。

  • このアクションにより、シングル サーバーに接続できる仮想ネットワークを指定できます。

    シングル サーバーに仮想ネットワーク規則を追加するスクリーンショット。

規則の設定を構成する:

  • 表示される構成パネルで、新しい仮想ネットワーク規則の名前を入力します。

  • フレキシブル サーバーが配置されているサブスクリプションを選択します。

  • フレキシブル サーバーに関連付けられている仮想ネットワーク (VNet) と特定のサブネットを選択します。

  • [OK] を選択して、設定を確定します。

    フレキシブル サーバー サブネットを許可する場合のスクリーンショット。

これらの手順を完了すると、シングル サーバーがフレキシブルサーバーのサブネットからの接続を受け入れるように構成され、2 つのサーバー間で安全に通信できるようになります。

シナリオ 7: Azure Database for PostgreSQL - プライベート エンドポイントを持つシングル サーバーから VNet 統合型 Azure Database for PostgreSQL - フレキシブル サーバーへ

プライベート エンドポイントを持つ Azure Database for PostgreSQL シングル サーバーから VNet 統合型フレキシブル サーバーへの接続を容易にするには、次の手順に従ってください。

プライベート エンドポイントの詳細を取得する:

  • Azure portal で、シングル サーバー インスタンスに移動し、プライベート エンドポイントを選択して、その仮想ネットワークとサブネットの詳細を表示します。

  • フレキシブル サーバーの [ネットワーク] ページにアクセスして、その仮想ネットワークとサブネット情報をメモします。

    単一サーバーでのプライベート エンドポイント接続のスクリーンショット。

    シングル サーバーのプライベート エンドポイントの仮想ネットワークとサブネットの詳細を示すスクリーンショット。

VNet ピアリングの要件を評価する

  • 両方が異なる VNet 内にある場合は、仮想ネットワーク ピアリングを有効にして、1 つの仮想ネットワークをもう 1 つの仮想ネットワークに接続する必要があります。 それらが同じ仮想ネットワーク内の異なるサブネットにある場合は、ピアリングは省略可能です。 フレキシブル サーバーからシングル サーバーへのトラフィックをブロックするネットワーク セキュリティ グループ (NSG) がないことを確認してください。

プライベート DNS ゾーンの構成

  • フレキシブル サーバーの [ネットワーク] ページに移動し、プライベート DNS ゾーンが使用されているかどうかを確認します。 使用されている場合は、ポータルでこのプライベート DNS ゾーンを開きます。 左ペインで、[仮想ネットワーク リンク] を選択し、シングル サーバーとフレキシブル サーバーの仮想ネットワークがこの一覧に追加されているかどうかを確認します。

    プライベート DNS ゾーンにリンクされている仮想ネットワークのスクリーンショット。

そうでない場合は、[追加] ボタンを選択し、シングル サーバーとフレキシブル サーバーの VNet に対するこのプライベート DNS ゾーンへのリンクを作成します。

  • シングル サーバーのプライベート エンドポイントに移動し、[DNS 構成] ページを選択します。 プライベート DNS ゾーンがこのエンドポイントにアタッチされているかどうかを確認します。 そうでない場合は、[構成の追加] ボタンを選択してプライベート DNS ゾーンをアタッチします。

    プライベート エンドポイントで使用されるプライベート DNS ゾーンを示すスクリーンショット。

  • シングル サーバーのプライベート エンドポイントでプライベート DNS ゾーンをクリックし、シングル サーバーとフレキシブル サーバーの VNet が仮想ネットワーク リンクに追加されているかどうかを確認します。 そうでない場合は、上記の手順に従って、シングル サーバーとフレキシブル サーバーの仮想ネットワークへのリンクをこのプライベート DNS ゾーンに追加します。

  • 最後のチェックは、シングル サーバーのプライベート エンドポイントのプライベート DNS ゾーンに移動し、プライベート IP アドレスを指すシングル サーバーの A レコードが存在するかどうかを確認することです。

    プライベート エンドポイントに割り当てられたプライベート IP アドレスを示すスクリーンショット。

これらの手順を完了すると、Azure Database for PostgreSQL – フレキシブル サーバーから Azure Database for PostgreSQL - シングル サーバーへの接続が有効になります。

シナリオ 8: プライベート エンドポイントを持つ Azure Database for PostgreSQL シングル サーバーからプライベート エンドポイントを持つ Azure Database for PostgreSQL フレキシブル サーバーへ

ランタイム サーバーの仮想ネットワークとプライベート エンドポイント構成の統合など、Azure PostgreSQL のプライベート エンドポイントを持つシングル サーバーからプライベート エンドポイントを持つフレキシブル サーバーに移行するための基本的なネットワーク手順を次に示します。 ランタイム サーバーについて詳しくは、移行ランタイム サーバーに関する記事を参照してください。

  • シングル サーバーのプライベート エンドポイントに関する詳細情報を収集する

    • Azure portal にアクセスし、Azure Database for PostgreSQL - シングル サーバー インスタンスを見つけます。
    • シングル サーバーのプライベート エンドポイント接続の下に記載されている、仮想ネットワーク (VNet) とサブネットに関する詳細情報を記録します。

    PE を持つシングル サーバーのスクリーンショット。

  • フレキシブル サーバーのプライベート エンドポイントに関する詳細情報を収集する

    • Azure portal にアクセスし、Azure Database for PostgreSQL - フレキシブル サーバー インスタンスを見つけます。
    • フレキシブル サーバーのプライベート エンドポイント接続の下に記載されている、仮想ネットワーク (VNet) とサブネットに関する詳細情報を記録します。

    PE を持つフレキシブル サーバーのスクリーンショット。

  • 移行ランタイム サーバーの VNet に関する詳細情報を収集する

    • Azure portal にアクセスし、移行ランタイム サーバー、すなわち、Azure Database for PostgreSQL - フレキシブル サーバー (VNet 統合) インスタンスを見つけます。
    • 仮想ネットワークの下に記載されている、仮想ネットワーク (VNet) とサブネットに関する詳細情報を記録します。

    移行ランタイム サーバーと仮想ネットワークのスクリーンショット。

  • VNet ピアリングの要件を評価する

    • 各サーバーが異なる VNet 内にある場合は、仮想ネットワーク ピアリングを有効にします。同じ仮想ネットワーク内の異なるサブネットにある場合は、ピアリングは必要ありません。
    • ソース サーバー、移行ランタイム サーバー、ターゲット サーバー間のトラフィックが NSG によってブロックされていないことを確認します。
  • プライベート DNS ゾーンの構成

    • 移行ランタイム サーバーのネットワーク ページで、プライベート DNS ゾーンの使用を確認します。
    • ソースの Azure Database for PostgreSQL - シングル サーバーとターゲットの Azure Database for PostgreSQL - フレキシブル サーバーの各 VNet が、両方とも移行ランタイム サーバーのプライベート DNS ゾーンにリンクされていることを確認します

    ランタイム サーバーのプライベート DNS ゾーンのスクリーンショット。

    • まだ構成されていない場合は、プライベート DNS ゾーンをシングル サーバーのプライベート エンドポイントにアタッチします。
    • シングル サーバーと移行ランタイム サーバーの仮想ネットワーク リンクをプライベート DNS ゾーンに追加します。
    • フレキシブル サーバーのプライベート エンドポイントに対して、DNS ゾーンのアタッチと仮想ネットワーク リンクのプロセスを繰り返します。

    ソース/ターゲット サーバーのプライベート DNS ゾーンのスクリーンショット。

シナリオ 9: プライベート IP を持つオンプレミス、Azure VM、AWS RDS からプライベート エンドポイントを持つ Azure Database for PostgreSQL フレキシブル サーバーへ

プライベート IP で構成されたオンプレミス環境、Azure VM、または AWS インスタンスから、プライベート エンドポイントで保護された Azure Database for PostgreSQL フレキシブル サーバーに PostgreSQL データベースを移行するためのネットワーク手順を、次に示します。 この移行により、プライベート ネットワーク空間内での安全なデータ転送が保証されます。その際、オンプレミス接続の場合は Azure の VPN または ExpressRoute が、クラウドからクラウドへの移行の場合は仮想ネットワーク ピアリングまたは VPN が使用されます。 ランタイム サーバーについて詳しくは、移行ランタイム サーバーに関する記事を参照してください。

  • ネットワーク接続を確立する:

    • オンプレミスのソースの場合は、ローカル ネットワークを Azure の仮想ネットワークに接続するためにサイト間 VPN または ExpressRoute を設定します。
    • Azure VM または AWS インスタンスの場合は、Azure の仮想ネットワークへの安全な接続のために、仮想ネットワーク ピアリング、VPN Gateway、または ExpressRoute を設定します。
  • 移行ランタイム サーバーの VNet に関する詳細情報を収集する

    • Azure portal にアクセスし、移行ランタイム サーバー、すなわち、Azure Database for PostgreSQL - フレキシブル サーバー (VNet 統合) インスタンスを見つけます。
    • 仮想ネットワークの下に記載されている、仮想ネットワーク (VNet) とサブネットに関する詳細情報を記録します。
  • VNet ピアリングの要件を評価する

    • 各サーバーが異なる VNet 内にある場合は、仮想ネットワーク ピアリングを有効にします。同じ仮想ネットワーク内の異なるサブネットにある場合は、ピアリングは必要ありません。
    • ソース サーバー、移行ランタイム サーバー、ターゲット サーバー間のトラフィックが NSG によってブロックされていないことを確認します。
  • プライベート DNS ゾーンの構成

    • 移行ランタイム サーバーのネットワーク ページで、プライベート DNS ゾーンの使用を確認します。
    • ソースとターゲットの Azure Database for PostgreSQL - フレキシブル サーバーの各 VNet が、両方とも移行ランタイム サーバーのプライベート DNS ゾーンにリンクされていることを確認します。
    • まだ構成されていない場合は、プライベート DNS ゾーンをフレキシブル サーバーのプライベート エンドポイントにアタッチします。
    • フレキシブル サーバーと移行ランタイム サーバーの仮想ネットワーク リンクをプライベート DNS ゾーンに追加します。

ネットワーク設定に関するリソース