同じ仮想ネットワーク内の複数の Azure Spring Apps サービス インスタンス内のアプリケーションに DNS 名をマップする
Note
Azure Spring Apps は、Azure Spring Cloud サービスの新しい名前です。 サービスの名前は新しくなりましたが、スクリーンショット、ビデオ、図などの資産の更新に取り組んでいる間、場所によってはしばらく古い名前が表示されます。
この記事の適用対象: ✔️ Basic または Standard ✔️ Enterprise
この記事では、Doメイン Name System (DNS) 名をアプリケーションにマップして、同じ仮想ネットワーク内の複数の Azure Spring Apps サービス インスタンスにアクセスする方法について説明します。
前提条件
- Azure サブスクリプション。 サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。
- Azure CLI バージョン 2.45.0 以上。 次のコマンドを使用して、Azure Spring Apps 拡張機能をインストールします。
az extension add --name spring
- Azure Spring Apps のインスタンスにデプロイされた仮想ネットワーク。 詳細については、「 Azure 仮想ネットワークに Azure Spring Apps をデプロイする (VNet インジェクション)」を参照してください。
概要
この記事では、DNS 名をアプリケーションにマッピングするための次の 2 つの方法について説明します。
Microsoft が提供する完全修飾 doメイン name (FQDN) を使用する。
この方法は、カスタム doメイン アプローチと比較して、DNS 名をマップする比較的シンプルで軽量な方法です。 DNS ゾーンで野生のカードアプローチが必要ない場合は、この方法をお勧めします。
この方法では、アプリケーションごとに DNS レコードが必要です。
カスタム doメイン を使用する。
既にカスタム doメインがある場合、またはマルチインスタンス シナリオで動作する野生のカードアプローチが必要な場合は、このアプローチを使用します。
この方法では、各 Azure Spring Apps サービス インスタンスの DNS レコードと、アプリケーションごとに構成されたカスタム doメインが必要です。
例として、この記事では、同じ仮想ネットワーク内の 2 つの Azure Spring Apps インスタンスの名前を使用 azure-spring-apps-1
します azure-spring-apps-2
。
[DNS マッピングの準備段階] セクションから始めて、好みの方法に進みます。
最後に、「プライベート アプリケーションのプライベート FQDN URL にアクセスする」セクションの説明に 従ってマッピングを テストします。
DNS マッピングの準備手順
DNS 名をマッピングするための FQDN とカスタム doメイン の両方の方法について、このセクションの手順を完了します。
アプリケーション IP アドレスの検索
どちらの方法でも、マップする Azure Spring Apps インスタンス内の各アプリケーションの IP アドレスが必要です。 IP アドレスを見つけるには、次の手順に従います。
Azure Spring Apps インスタンス用に作成した仮想ネットワークに移動し、ナビゲーション ウィンドウで [接続済みデバイス] を選択します。
[接続されているデバイス] ページで、kubernetes-internal を検索します。
検索結果で、Azure Spring Apps サービス インスタンスのサービス ランタイム サブネットに接続されている各デバイスを検索し、その IP アドレスをコピーします。 次のスクリーンショットの例では、IP アドレスは .、IP アドレス
azure-spring-apps-1
azure-spring-apps-2
は10.1.0.6
10.1.2.6
.
プライベート DNS ゾーンの作成
プライベート ネットワーク内のアプリケーションのプライベート DNS ゾーンを作成するには、次の手順に従います。
Note
21Vianet が運営する Microsoft Azure を使用している場合は、この記事で置きprivate.microservices.azure.cn
換えてくださいprivate.azuremicroservices.io
。 詳細については、「Azure のエンドポイントを確認する」を参照してください。
Azure ホーム ページで、プライベート DNS ゾーンを検索します。
[プライベート DNS ゾーン] ページで、[作成] を選択します。
[プライベート DNS ゾーンの作成] ページでフォームに入力します。 [名前] の [インスタンスの詳細] で、プライベート DNS ゾーンの名前として指定
private.azuremicroservices.io
します。[作成の確認] を選択 します。
[作成] を選択します
ゾーンの作成には数分かかることがあります。
仮想ネットワークのリンク
作成したプライベート DNS ゾーンを仮想ネットワークにリンクするには、仮想ネットワーク リンクを作成する必要があります。
このリンクを作成するには、次の手順に従います。
名前を付
private.azuremicroservices.io
けて作成したプライベート DNS ゾーンに移動します。 その名前を持つものがいくつか存在する可能性があるため、リソース グループとサブスクリプションによって正しい名前を決定します。ナビゲーション ウィンドウで、[仮想ネットワーク リンク] を選択し、[追加] を選択します。
[リンク名] に「azure-spring-apps-dns-link」と入力します。
[仮想ネットワーク] で、前提条件として作成した仮想ネットワークを選択します。
[OK] を選択します。
アプリケーションにプライベート FQDN を割り当てる
アプリケーションのプライベート FQDN を割り当てます。
割り当てられたエンドポイントでアプリを更新するには、次の手順に従います。
Microsoft が提供する FQDN を使用した DNS マッピング
この方法を使用するには、Microsoft が提供する完全修飾 doメイン 名 (FQDN) を使用する場合に、各アプリケーションの DNS レコードを要件として作成する必要があります。 このプロセスの主要な理解については、「プライベート ネットワーク内のアプリケーションにアクセスする」を参照してください。
エンドポイントが割り当てられた Azure Spring Apps サービス インスタンス内のアプリケーションが仮想ネットワークにデプロイされている場合、エンドポイントはプライベート FQDN になります。 既定では、完全修飾 doメイン 名は、サービス インスタンス全体のアプリごとに一意です。 FQDN 形式は <service-name>-<app-name>.private.azuremicroservices.io
.
すべてのアプリケーションの DNS レコードを作成する
プライベート DNS ゾーンを使用して DNS 名を変換および解決するには、各アプリケーションのゾーンに "A" 型レコードを作成する必要があります。 この例では、アプリ名は 〗 hello-vnet
、Azure Springs Apps サービス インスタンス名は azure-spring-apps-1
.
各アプリケーションの IP アドレスが必要です。 「プライベート ネットワークでアプリケーションにアクセスする」の「アプリケーションの IP を検索する」セクションの説明に従ってコピーします。 この例では、IP アドレスは、10.1.0.6
です。
DNS レコードを作成するには、次の手順に従います。
必要に応じてこれらの手順を繰り返して、他のアプリケーションの DNS レコードを追加します。
カスタム do を使用した DNS マッピングメイン
この方法を使用すると、Azure Spring Apps インスタンスごとに DNS レコードを追加するだけで済みますが、アプリケーションごとにカスタム doメイン を構成する必要があります。 このプロセスの基本的な理解については、「既存のカスタム doメイン を Azure Spring Apps にマップする」を参照してください。
次の使用例は、プライベート DNS ゾーンprivate.azuremicroservices.io
を再利用して、カスタム doメイン 関連 DNS レコードを追加します。 プライベート FQDN の形式 <app-name>.<service-name>.private.azuremicroservices.io
は次のとおりです。
技術的には、必要な任意のプライベート完全修飾 doメイン 名を使用できます。 その場合は、選択した完全修飾ドメイン名に対応する新しいプライベート DNS ゾーンメイン作成する必要があります。
カスタム doメイン を Azure Spring Apps インスタンス内のアプリにマップする
カスタム doメイン を Azure Spring Apps インスタンス内の各アプリケーションにマップするには、次の手順に従います。
Azure Spring Apps インスタンスを開き、ナビゲーション ウィンドウで [アプリ] を選択します。
[アプリ] ページで、アプリケーションを選択します。
ナビゲーション ウィンドウで [カスタム 実行メインを選択します。
[カスタムの追加] を選択しますメイン。
[カスタム doメイン の追加] ウィンドウで、使用する FQDN を入力し、後で TLS/SSL バインドに使用する証明書に対応していることを確認します。 この例では、
hello-vnet.azure-spring-apps-1.private.azuremicroservices.io
を使用します。 CNAME 部分は無視できます。[検証] を選択します。
検証された場合は、[追加] を選択します。
カスタム doメイン がアプリに正常にマップされると、カスタム doメイン テーブルに表示されます。
Note
カスタム do の TLS/SSL 状態値が Not Secure であるメインは、まだ TLS/SSL 証明書にバインドされていないことを意味します。 ブラウザーからカスタム ドメインへの HTTPS 要求を実行すると、エラーまたは警告が表示されます。
TLS/SSL バインドを追加する
この手順を実行する前に、証明書を準備し、Azure Spring Apps にインポートしていることを確認してください。 詳細については、「既存のカスタム do メインを Azure Spring Apps にマップする」を参照してください。
次の手順を使用して、証明書を使用してアプリのカスタム doメイン を更新します。
Azure Spring Apps インスタンスを開き、ナビゲーション ウィンドウで [アプリ] を選択します。
[アプリ] ページで、アプリケーションを選択します。
ナビゲーション ウィンドウで [カスタム 実行メインを選択します。
カスタム do の省略記号 (...) ボタンを選択しメイン TLS/SSL のバインドを選択します。
[TLS/SSL バインド] ウィンドウで、[証明書] を選択し、証明書を選択またはインポートします。
[保存] を選択します。
TLS/SSL バインドを正常に追加すると、TLS/SSL 状態の値 "正常" で示されているように、doメイン 状態はセキュリティで保護されます。
すべてのアプリケーションに対してカスタム doメイン を構成する
プライベート DNS ゾーンを使用して DNS 名を変換して解決するには、各 Azure Spring Apps サービス インスタンスのゾーンに "A" 型レコードを作成する必要があります。 この例では、アプリ名は 〗 hello-vnet
、Azure Springs Apps サービス インスタンス名は azure-spring-apps-1
.
各アプリケーションの IP アドレスが必要です。 「プライベート ネットワークでアプリケーションにアクセスする」の「アプリケーションの IP を検索する」セクションの説明に従ってコピーします。 この例では、IP アドレスは、10.1.0.6
です。
次の手順に従って、DNS ゾーンに A レコードを作成します。
必要に応じて繰り返し、他のアプリケーションのカスタム doメイン を構成します。
アプリケーションのプライベート FQDN にアクセスする
両方の方法の FQDN 割り当てと DNS マッピングの後、プライベート ネットワーク内のすべてのアプリケーションのプライベート FQDN にアクセスできます。 たとえば、ジャンプボックスまたは仮想マシンを同じ仮想ネットワークまたはピアリングされた仮想ネットワークに作成し、アプリケーションのすべてのプライベート FQDN にアクセスできます。
次の例は、FQDN アプローチを示しています。
https://hello-vnet.azure-spring-apps-1.private.azuremicroservices.io
https://hello-vnet.azure-spring-apps-2.private.azuremicroservices.io
次の例は、カスタム doメイン アプローチを示しています。
https://azure-spring-apps-1-hello-vnet.private.azuremicroservices.io
https://azure-spring-apps-2-hello-vnet.private.azuremicroservices.io
次のスクリーンショットは、FQDN を使用する Spring アプリケーションの URL を示しています。
次のスクリーンショットは、カスタム doメイン を使用する Spring アプリケーションの URL を示しています。
リソースをクリーンアップする
後続の記事を引き続き実行する場合は、これらのリソースをそのまま残しておくことができます。 不要になったら、リソース グループを削除します。これにより、リソース グループ内のリソースが削除されます。 Azure CLI を使用してリソース グループを削除するには、次のコマンドを使用します。
az group delete --name $RESOURCE_GROUP