演習 - 自分の Application Gateway をテストする

完了

最後のステップでは、アプリケーション ゲートウェイをテストし、負荷分散が実装されていること、および使用できない Web サーバーにトラフィックが転送されないことを確認します。 また、パスベースのルーティングが正しく動作していることも確認します。

Diagram showing the resources that have been deployed.

車両登録 Web アプリの負荷分散をテストする

  1. Cloud Shell で次のコマンドを実行して、Application Gateway のルート URL を生成します。

    echo http://$(az network public-ip show \
      --resource-group $RG \
      --name appGatewayPublicIp \
      --query dnsSettings.fqdn \
      --output tsv)
    
  2. Web ブラウザーを使って、前のコマンドで返された URL の Web サイトに移動します。 これは、自分のアプリケーション ゲートウェイのアドレスです。 車両登録 Web アプリのホーム ページが表示されることを確認します。 使っている Web サーバーの名前がフッターに表示されます (webServer1 または webServer2)。

    Screenshot showing an image of the vehicle registration web app.

  3. Web ブラウザーのアドレス バーの [更新] を選択します。 今度はセッションが別の Web サーバーに接続されることに注意してください。 この構成のアプリケーション ゲートウェイでは、ラウンドロビンの負荷分散が使われます。

  4. [車両の登録] を選択して、車両の詳細を入力し、[登録] をクリックします。

  5. [更新] をさらに数回選択します。 要求がサーバー間で切り替わるはずです。

サーバーの障害に対する Application Gateway の回復性をテストする

  1. Cloud Shell で次のコマンドを実行し、webServer1 の仮想マシンを停止して割り当てを解除します。

    az vm deallocate \
      --resource-group $RG \
      --name webServer1
    
  2. Web ブラウザーでアプリケーションに戻り、[更新] を数回選択します。 今度は、Web ブラウザーが webServer2 のみに接続することに注意してください。

  3. 右側の Cloud Shell ウィンドウで、webServer1 インスタンスを再起動します。

    az vm start \
      --resource-group $RG \
      --name webServer1
    
  4. Web ブラウザーで Web アプリケーションに戻り、[更新] を数回選択します。 要求が両方の Web サーバーに再び分散されるようになることがわかるはずです。

Web アプリケーションが実行されていることを確認しました。 Application Gateway では、負荷分散を使って要求がサーバー間に分散されます。 Application Gateway では、サーバーで障害が発生しているかどうかが検出され、使用できないサーバーには要求はルーティングされません。

パスベースのルーティングをテストする

次に、パスベースのルーティングをテストしてみましょう。 サイトのルートへの URL および /VehicleRegistration/ が指定されている URL は VM を含む vmPool にルーティングされ、/LicenseRenewal/ への要求は App Service を含む appServicePool にルーティングされることを思い出してください。

ルート ページへのルーティングは、車両登録ページを表示できたので、動作することを確認しました。 他のルートが動作することを確認してみましょう。

  1. ここで、アプリケーション ゲートウェイ ページで、[車両の登録] を選択します。 これにより、車両登録サイトの車両登録ページが表示される必要があります。 URL に /VehicleRegistration/ が含まれるので、これは車両登録サイトが実行されている vmPool にルーティングされます。

    Screenshot showing a vehicle-registration web app.

  2. 今度は、http://<vehicleAppGateway>/LicenseRenewal/Create にアクセスします。 これにより、App Service で実行されている免許更新ページに移動します。 URL に /LicenseRenewal/ が含まれるので、これは免許更新サイトが実行されている appServicePool にルーティングされます。

    Screenshot showing an image of the license-renewal web app.

この構成では、両方のサイトに対するすべてのユーザーを Application Gateway を通して転送することができ、ユーザーは 1 つのルート URL を憶えるだけで済みます。 Web プレゼンスを拡大するときは、新しいサイトを追加できます。

Web アプリケーション ファイアウォール

このアプリケーション ゲートウェイでは、WAF も有効にしました。 このようにすることで、両方の Web サイトにセキュリティ保護が自動的に追加されています。 これは、よくある脆弱性に対する確実な保護レイヤーを提供するもので、インフラストラクチャとデータの保護に役立ちます。