プライベート DNS ゾーンの統合: Azure プライベート DNS ゾーンの統合により、現在の仮想ネットワーク、またはリージョン内でピアリングされた (プライベート DNS ゾーンがリンクされた) 仮想ネットワーク内でプライベート DNS を解決できます。
プライベート DNS ゾーンを使用する
Azure プライベート DNS は、仮想ネットワークのための信頼性が高く安全な DNS サービスとなります。 カスタムの DNS ソリューションを構成しなくても、Azure プライベート DNS によって、仮想ネットワークにおけるドメイン名の管理と解決が行われます。
Azure 仮想ネットワークでプライベート ネットワーク アクセスを使用する場合は、DNS 解決を行うためにプライベート DNS ゾーン情報の提供が必須です。 プライベート ネットワーク アクセスを使用して Azure Database for PostgreSQL フレキシブル サーバーを新しく作成する場合は、プライベート アクセスで Azure Database for PostgreSQL フレキシブル サーバーを構成する際に、プライベート DNS ゾーンを使用する必要があります。
重要
別のサブスクリプションでプライベート DNS ゾーンを使用する場合、そのサブスクリプションにも Microsoft.DBforPostgreSQL リソース プロバイダーを登録する必要があります。登録しないと、Azure Database for PostgreSQL フレキシブル サーバーのデプロイは完了しません。
API、Azure Resource Manager テンプレート (ARM テンプレート)、Bicep、または Terraform によるプライベート ネットワーク アクセスを使用して、新しい Azure Database for PostgreSQL フレキシブル サーバーを作成する場合は、プライベート DNS ゾーンを作成します。 プライベート アクセスを使う Azure Database for PostgreSQL フレキシブル サーバーを構成するときに、それらのゾーンを使用します。 詳細については、「Azure の REST API 仕様」を参照してください。
Azure Database for PostgreSQL フレキシブル サーバーの作成に Azure portal または Azure CLI を使用する場合は、同じ、または異なるサブスクリプションで以前に作成したプライベート DNS ゾーン名を指定できます。指定しない場合は、デフォルトのプライベート DNS ゾーンがサブスクリプションに自動的に作成されます。
Azure API、ARM テンプレート、Bicep、または Terraform を使用する場合は、末尾が .postgres.database.azure.com のプライベート DNS ゾーンを作成します。 プライベート アクセスを使う Azure Database for PostgreSQL フレキシブル サーバーを構成するときに、それらのゾーンを使用します。 たとえば、[name1].[name2].postgres.database.azure.com または [name].postgres.database.azure.com の形式を使います。
[name].postgres.database.azure.com の形式を使用する場合は、その名前を、Azure Database for PostgreSQL フレキシブル サーバーのいずれかに使用している名前にすることはできません。使用している名前にすると、プロビジョニング時にエラー メッセージが表示されます。 詳細については、「プライベート DNS ゾーンの概要」を参照してください。
Azure Database for PostgreSQL - フレキシブル サーバーの作成時に指定したプライベート DNS ゾーンは、Azure Portal、API、Azure CLI、または ARM テンプレートを使用して、同じまたは異なるサブスクリプションに存在する別のプライベート DNS ゾーンに変更することもできます。
重要
現在、Azure Database for PostgreSQL フレキシブル サーバーの作成時に指定したプライベート DNS ゾーンを別のプライベート DNS ゾーンに変更する機能は、高可用性機能が有効なサーバーでは無効になっています。
Azure でプライベート DNS ゾーンを作成した後、仮想ネットワークをそれにリンクさせる必要があります。 リンクされた仮想ネットワークでホストされているリソースは、プライベート DNS ゾーンにアクセスできるようになります。
重要
プライベート ネットワークを使用した Azure Database for PostgreSQL - フレキシブル サーバー用のサーバー作成時に仮想ネットワーク リンクの存在を検証しなくなりました。 ポータルを通じてサーバーを作成する場合は、Azure portal の[プライベート DNS ゾーンを仮想ネットワークにリンクする] チェック ボックスを使用して、サーバー作成時にリンクを作成するかどうかを選択できます。
カスタム DNS サーバーを使用する場合は、DNS フォワーダーを使用して Azure Database for PostgreSQL - フレキシブル サーバーの FQDN を解決する必要があります。 フォワーダーの IP アドレスは、168.63.129.16 である必要があります。
カスタム DNS サーバーは、仮想ネットワーク内にあるか、仮想ネットワークの DNS サーバー設定を使用して到達可能である必要があります。 詳細については、「独自の DNS サーバーを使用する名前解決」を参照してください。
プライベート DNS ゾーンと仮想ネットワーク ピアリング
プライベート DNS ゾーンの設定と、仮想ネットワーク ピアリングはそれぞれ独立しています。 同じリージョンまたは異なるリージョンから別の仮想ネットワークにプロビジョニングされたクライアントから、Azure Database for PostgreSQL フレキシブル サーバーに接続する必要がある場合は、プライベート DNS ゾーンと仮想ネットワークをリンクさせる必要があります。 詳細については、「仮想ネットワークのリンク」を参照してください。
注意
リンクできるのは、名前が postgres.database.azure.com で終わるプライベート DNS ゾーンのみです。 DNS ゾーンの名前を Azure Database for PostgreSQL フレキシブル サーバーと同じにすることはできません。 同じにすると、名前解決は失敗します。
スポークはネットワーク アプライアンスを介して通信します: 各スポーク仮想ネットワークには、Virtual WAN またはハブ仮想ネットワークへのピアリングがあります。 アプライアンスは、スポークからスポークへのトラフィックをルーティングします。 アプライアンスは、(Virtual WAN と同様に) マイクロソフトが管理するか、ユーザーが管理することができます。
この問題を解決するには、VNET1 のクライアントが、Azure Database for PostgreSQL - フレキシブル サーバーのプライベート DNS ゾーンにアクセスできるようにする必要があります。 これを実現するには、Azure Database for PostgreSQL フレキシブル サーバーのプライベート DNS ゾーンに仮想ネットワーク リンクを追加します。
サポートされない仮想ネットワークのシナリオ
仮想ネットワーク統合で作成される仮想ネットワークで作業する場合の制限事項を次に示します。
Azure Database for PostgreSQL フレキシブル サーバーを仮想ネットワークとサブネットにデプロイした後、それを別の仮想ネットワークまたはサブネットに移動することはできません。 仮想ネットワークを別のリソース グループまたはサブスクリプションに移動することはできません。