クイック スタート:グローバル Web アプリケーションの高可用性を実現するフロント ドアを作成する

重要

Azure Front Door (クラシック) は、2027 年 3 月 31 日に廃止されます。 サービスの中断を回避するには、2027 年 3 月までに Azure Front Door の Standard または Premium レベルに Azure Front Door (クラシック) プロファイルを移行することが重要です。 詳細については、Azure Front Door (クラシック) の廃止に関するページを参照してください。

このクイックスタートでは、Azure portal で Azure Front Door を使用して Web アプリケーションの高可用性を設定する方法を示します。 異なる Azure リージョンで稼働する Web アプリケーションの 2 つのインスタンスにトラフィックを分散する Front Door 構成を作成します。 この構成では、同等の重み付けおよび同じ優先度のバックエンドを使用します。つまり、Azure Front Door では、このアプリケーションをホストするサイトのうち、使用可能な最も近いものにトラフィックを送信します。 また、Azure Front Door では、Web アプリケーションの正常性を監視し、最も近いサイトがダウンしている場合は、次に近いサイトへの自動フェールオーバーを実行します。

Azure portal を使用した Front Door デプロイ環境の図。

前提条件

Web アプリの 2 つのインスタンスを作成する

このクイックスタートを完了するには、異なる Azure リージョンで稼働する Web アプリケーションの 2 つのインスタンスが必要です。 これらの Web アプリケーション インスタンスは "アクティブ/アクティブ" モードで動作します。つまり、両方が同時にトラフィックを処理できます。 このセットアップは、1 つのインスタンスが他方のバックアップとして機能する "アクティブ/スタンバイ" モードとは異なります。

このクイックスタートに従うには、異なる Azure リージョンで稼働する 2 つの Web アプリが必要です。 それらがまだない場合は、ここに示す手順を使用してサンプル Web アプリを作成できます。

  1. Azure portal にサインインします。

  2. 画面の左上で、[+ リソースの作成] を選択し、[Web アプリ] を検索します。

    Azure portal で Web アプリを作成します。

  3. [Web アプリの作成] ページの [基本] タブで、次の詳細を指定または選択します。

    設定
    サブスクリプション サブスクリプションを選択します。
    リソース グループ [新規作成] を選択し、テキスト ボックスに「FrontDoorQS_rg1」と入力します。
    名前 Web アプリの一意の名前を入力します。 たとえば、WebAppContoso-1 です。
    発行 [コード] を選択します。
    ランタイム スタック [.NET Core 3.1 (LTS)] を選択します。
    オペレーティング システム [Windows] を選択します。
    [リージョン] [米国中部] を選択します。
    Windows プラン [新規作成] を選択し、テキスト ボックスに「myAppServicePlanCentralUS」と入力します。
    SKU とサイズ [Standard S1 100 total ACU, 1.75 GB memory](Standard S1 合計 100 ACU、1.75 GB メモリ) を選択します。
  4. [確認 + 作成] を選択し、概要の詳細を確認します。 次に、[作成] を選択してデプロイ プロセスを開始します。 デプロイが完了するまでに数分かかる場合があります。

    [Web アプリの作成] ページを示すスクリーンショット。

最初の Web アプリが正常にデプロイされたら、別の Web アプリの作成に進みます。 同じ手順に従い、前と同じ値を入力します。ただし、一覧に記載されているものを除きます。

設定
リソース グループ [新規作成] を選択し、「FrontDoorQS_rg2」と入力します
名前 Web アプリの一意の名前を入力します (WebAppContoso-002 など)
リージョン 最初の Web アプリとは異なるリージョンを選択します ([East US] (米国東部) など)
App Service プラン>Windows プラン [新規] を選択し、「myAppServicePlanEastUS」と入力して、[OK] を選択します

アプリケーション用のフロント ドアを作成する

2 つの Web アプリ サーバーのうち待ち時間が短い方にユーザー トラフィックをルーティングするように Azure Front Door を設定します。 まず Azure Front Door のフロントエンド ホストを追加します。

  1. ホーム ページまたは Azure メニューから[+ リソースの作成] を選択します。 [ネットワーク]>[Front Door と CDN プロファイル] を選択します。

  2. [オファリングの比較] ページで、[他のオファリングを調べる] を選択します。 次に、 [Azure Front Door (クラシック)] を選択します。 その後 [続行] を選択します。

  3. [フロント ドアを作成する] ページの [基本] タブで、次の情報を指定または選択してから、[次へ: 構成] を選択します。

    設定
    サブスクリプション サブスクリプションを選択します。
    リソース グループ [新規作成] を選択し、テキスト ボックスに「FrontDoorQS_rg0」と入力します。
    リソース グループの場所 [米国中部] を選択します。
  4. [フロントエンドまたはドメイン] で、[+] を選択して [フロントエンド ホストの追加] ページを開きます。

  5. グローバルに一意のホスト名を [ホスト名] に入力します。 たとえば、contoso-frontend です。 [追加] を選択します。

    Azure Front Door のフロントエンド ホストを追加。

次に、2 つの Web アプリを含んだバックエンド プールを設定します。

  1. 引き続き [フロント ドアを作成する][バックエンド プール] で [+] を選択し、[バックエンド プールの追加] ページを開きます。

  2. [名前] として「myBackendPool」を入力してから、[バックエンドの追加] を選択します。

    バックエンド プールを追加。

  3. [バックエンドの追加] ウインドウで、次の情報を指定または選択し、[追加] を選択します。

    設定
    バックエンド ホストの種類 [App Service] を選択します。
    サブスクリプション サブスクリプションを選択します。
    バックエンド ホスト名 最初に作成した Web アプリを選択します。 たとえば、WebAppContoso-1 です。

    他のフィールドはすべて既定値のままにします。

    Front Door にバックエンド ホストを追加。

  4. もう一度 [バックエンドの追加] を選択します。 次の情報を指定または選択し、[追加] を選択します。

    設定
    バックエンド ホストの種類 [App Service] を選択します。
    サブスクリプション サブスクリプションを選択します。
    バックエンド ホスト名 作成した 2 つ目の Web アプリを選択します。 たとえば、WebAppContoso-2 です。

    他のフィールドはすべて既定値のままにします。

  5. [バックエンド プールの追加] ページで [追加] を選択して、バックエンド プールの構成を完了します。

    Azure Front Door 用のバックエンド プールを追加。

最後に、ルーティング規則を作成します。 フロントエンド ホストは、ルーティング規則によってバックエンド プールにリンクされます。 この規則によって、contoso-frontend.azurefd.net への要求が myBackendPool にルーティングされます。

  1. 引き続き [フロント ドアを作成する][ルーティング規則] で [+] を選択し、ルーティング規則を設定します。

  2. [規則を追加する][名前] に「LocationRule」と入力します。 すべて既定値のままにし、[追加] を選択してルーティング規則を追加します。

    Front Door 作成時の [規則を追加する] を示すスクリーンショット。

    警告

    Azure Front Door 内の各フロントエンド ホストを、既定のパス /* を持つルーティング規則に関連付ける必要があります。 つまり、すべてのルーティング規則の中で、既定のパス /* のフロントエンド ホストのそれぞれに、少なくとも 1 つのルーティング規則が必要です。 そうでないと、エンドユーザーのトラフィックが正しくルーティングされないおそれがあります。

  3. [確認 + 作成] を選択し、詳細を確認します。 次に、[作成] を選択してデプロイを開始します。

    構成された Azure Front Door。

Azure Front Door の動作を確認する

フロント ドアを作成した後、グローバルに構成がデプロイされるまでに数分かかります。完了したら、作成したフロントエンド ホストにアクセスします。 ブラウザで、フロントエンドのホスト アドレスに移動します。 要求は、バックエンド プール内の指定されたサーバーから、最も近いサーバーに自動的にルーティングされます。

このクイックスタートに従ってこれらのアプリを作成した場合は、情報ページが表示されます。

即時グローバル フェールオーバー機能をテストするには、次の手順を試します。

  1. リソース グループ FrontDoorQS_rg0 に移動し、フロントエンド サービスを選択します。

    フロントエンド サービスのスクリーンショット。

  2. [概要] ページで、フロントエンド ホスト アドレスをコピーします。

    フロントエンドのホスト アドレスのスクリーンショット。

  3. 前述したように、ブラウザーを開き、フロントエンド アドレスにアクセスします。

  4. Azure portal で、App Services を検索して選択します。 下へスクロールして、Web アプリを見つけます (WebAppContoso-1 など)。

  5. Web アプリを選択し、[停止][はい] の順に選択して確認します。

  6. ブラウザーを更新します。 同じ情報ページが表示されるはずです。

    ヒント

    これらのアクションが有効になるのに、しばらく時間がかかる場合があります。 画面の更新がもう一度必要になることがあります。

  7. もう一方の Web アプリを見つけ、同様に停止します。

  8. ブラウザーを更新します。 今回はエラー メッセージが表示されます。

    Web アプリの両方のインスタンスが停止している。

リソースをクリーンアップする

作業が完了したら、作成した項目はすべて削除してかまいません。 リソース グループを削除すると、その内容も削除されます。 このフロント ドアを使用する予定がない場合は、不要な料金が発生しないようリソースを削除してください。

  1. Azure portal で [リソース グループ] を探して選択するか、Azure portal のメニューから [リソース グループ] を選びます。

  2. フィルターを使用するか、下へスクロールしてリソース グループを探します (FrontDoorQS_rg0 など)。

  3. リソース グループを選択し、リソース グループの [削除] を選択します。

    警告

    この削除操作は元に戻すことができません。

  4. 削除するリソース グループの名前を入力し、[削除] を選択します。

  5. 残りの 2 つのグループでこれらの手順を繰り返します。

次のステップ

次の記事に進んで、フロント ドアのカスタム ドメインを構成する方法を学習してください。