チュートリアル:Azure Portal を使用してパス ベースのルーティング規則のあるアプリケーション ゲートウェイを作成するTutorial: Create an application gateway with path-based routing rules using the Azure portal

アプリケーション ゲートウェイを作成するときに、Azure Portal を使用して URL パス ベースのルーティング規則を構成できます。You can use the Azure portal to configure URL path-based routing rules when you create an application gateway. このチュートリアルでは、仮想マシンを使用してバックエンド プールを作成します。In this tutorial, you create backend pools using virtual machines. その後、Web トラフィックがプール内の適切なサーバーに確実に到着するようにルーティング規則を作成します。You then create routing rules that make sure web traffic arrives at the appropriate servers in the pools.

この記事では、次のことについて説明します。In this article, you learn how to:

  • アプリケーション ゲートウェイの作成Create an application gateway
  • バックエンド サーバー用の仮想マシンの作成Create virtual machines for backend servers
  • バックエンド サーバーでのバックエンド プールの作成Create backend pools with the backend servers
  • バックエンド リスナーの作成Create a backend listener
  • パス ベースのルーティング規則の作成Create a path-based routing rule

URL ルーティングの例

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。If you don't have an Azure subscription, create a free account before you begin.

注意

この記事は、Azure Az PowerShell モジュールを使用するように更新されています。This article has been updated to use the Azure Az PowerShell module. Az PowerShell モジュールは、Azure と対話するために推奨される PowerShell モジュールです。The Az PowerShell module is the recommended PowerShell module for interacting with Azure. Az PowerShell モジュールの使用を開始するには、「Azure PowerShell をインストールする」を参照してください。To get started with the Az PowerShell module, see Install Azure PowerShell. Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。To learn how to migrate to the Az PowerShell module, see Migrate Azure PowerShell from AzureRM to Az.

前提条件Prerequisites

Azure Portal https://portal.azure.com にサインインします。Sign in to the Azure portal at https://portal.azure.com.

仮想マシンを作成するCreate virtual machines

この例では、アプリケーション ゲートウェイのバックエンド サーバーとして使用する 3 つの仮想マシンを作成します。In this example, you create three virtual machines to be used as backend servers for the application gateway. また、IIS を仮想マシンにインストールして、アプリケーション ゲートウェイが想定どおりに動作することを確認します。You also install IIS on the virtual machines to verify that the application gateway works as expected.

  1. Azure portal で、 [リソースの作成] を選択します。On the Azure portal, select Create a resource.

  2. [人気順] の一覧で [Windows Server 2016 Datacenter] を選択します。Select Windows Server 2016 Datacenter in the Popular list.

  3. 次の仮想マシンの値を入力します。Enter these values for the virtual machine:

    • [リソース グループ] : [新規作成] を選択し、「 myResourceGroupAG 」と入力します。Resource group , select Create new , and then type myResourceGroupAG.
    • [仮想マシン名] : myVM1Virtual machine name : myVM1
    • [リージョン] : (米国) 米国東部Region : (US) East US
    • [ユーザー名] : azureuserUsername : azureuser
    • パスワード : Azure123456!Password : Azure123456!
  4. [Next:Disks](次へ: ディスク) を選択します。Select Next:Disks.

  5. [次へ:ネットワーク] を選択します。Select Next:Networking

  6. [仮想ネットワーク] で、 [新規作成] を選択し、次の仮想ネットワークの値を入力します。For Virtual network , select Create new and then type these values for the virtual network:

    • myVNet - 仮想ネットワークの名前です。myVNet - for the name of the virtual network.
    • 10.0.0.0/16 - 仮想ネットワークのアドレス空間です。10.0.0.0/16 - for the virtual network address space.
    • myBackendSubnet - 最初のサブネットの名前です。myBackendSubnet for the first subnet name
    • 10.0.1.0/24 - サブネットのアドレス空間です。10.0.1.0/24 - for the subnet address space.
    • myAGSubnet - 2 つ目のサブネットの名前です。myAGSubnet - for the second subnet name.
    • 10.0.0.0/24 - サブネットのアドレス空間です。10.0.0.0/24 - for the subnet address space.
  7. [OK] を選択します。Select OK.

  8. [ネットワーク インターフェイス] で、そのサブネットに対して myBackendSubnet が選択されていることを確認してから、 [次へ:管理] を選択します。Ensure that under Network Interface , myBackendSubnet is selected for the subnet, and then select Next: Management.

  9. [オフ] を選択して、ブート診断を無効にします。Select Off to disable boot diagnostics.

  10. [確認および作成] をクリックし、概要ページの設定を確認して、 [作成] を選択します。Click Review + Create , review the settings on the summary page, and then select Create.

  11. さらに 2 つの仮想マシン myVM2myVM3 を作成し、それらを MyVNnet 仮想ネットワークと myBackendSubnet サブネットに配置します。Create two more virtual machines, myVM2 and myVM3 and place them in the MyVNet virtual network and the myBackendSubnet subnet.

IIS のインストールInstall IIS

  1. 対話型シェルを開いて、 PowerShell に設定されていることを確認します。Open the interactive shell and make sure that it's set to PowerShell.

    カスタム拡張機能のインストール

  2. 次のコマンドを実行して、IIS を仮想マシンにインストールします。Run the following command to install IIS on the virtual machine:

         $publicSettings = @{ "fileUris" = (,"https://raw.githubusercontent.com/Azure/azure-docs-powershell-samples/master/application-gateway/iis/appgatewayurl.ps1");  "commandToExecute" = "powershell -ExecutionPolicy Unrestricted -File appgatewayurl.ps1" }
    
        Set-AzVMExtension `
         -ResourceGroupName myResourceGroupAG `
         -Location eastus `
         -ExtensionName IIS `
         -VMName myVM1 `
         -Publisher Microsoft.Compute `
         -ExtensionType CustomScriptExtension `
         -TypeHandlerVersion 1.4 `
         -Settings $publicSettings
    
  3. さらに 2 つの仮想マシンを作成し、終了したばかりの手順を使用して、IIS をインストールします。Create two more virtual machines and install IIS using the steps that you just finished. 名前および Set-AzVMExtension の VMName の値として、 myVM2myVM3 という名前を入力します。Enter the names of myVM2 and myVM3 for the names and for the values of VMName in Set-AzVMExtension.

アプリケーション ゲートウェイの作成Create an application gateway

  1. Azure portal の左側のメニューにある [リソースの作成] を選択します。Select Create a resource on the left menu of the Azure portal. [新規作成] ウィンドウが表示されます。The New window appears.

  2. [ネットワーク] を選択し、 おすすめ のリストで [Application Gateway] を選択します。Select Networking and then select Application Gateway in the Featured list.

[基本] タブBasics tab

  1. [基本] タブで、次のアプリケーション ゲートウェイの設定に以下の値を入力します。On the Basics tab, enter these values for the following application gateway settings:

    • [リソース グループ] :リソース グループには、 myResourceGroupAG を選択します。Resource group : Select myResourceGroupAG for the resource group.

    • [アプリケーション ゲートウェイ名] :アプリケーション ゲートウェイの名前として「 myAppGateway 」と入力します。Application gateway name : Enter myAppGateway for the name of the application gateway.

    • [リージョン] : [(米国) 米国東部] を選択します。Region - Select (US) East US.

      新しいアプリケーション ゲートウェイの作成:基本

  2. [仮想ネットワークの構成] で、仮想ネットワークの名前として myVNet を選択します。Under Configure virtual network , select myVNet for the name of the virtual network.

  3. サブネットには、 myAGSubnet を選択します。Select myAGSubnet for the subnet.

  4. 他の設定は既定値をそのまま使用し、 [次へ:フロントエンド] を選択します。Accept the default values for the other settings and then select Next: Frontends.

[フロントエンド] タブFrontends tab

  1. [フロントエンド] タブで、 [フロントエンド IP アドレスの種類][パブリック] に設定されていることを確認します。On the Frontends tab, verify Frontend IP address type is set to Public.

    注意

    Application Gateway v2 SKU では、 [パブリック] フロントエンド IP 構成のみを選択できます。For the Application Gateway v2 SKU, you can only choose Public frontend IP configuration. プライベート フロントエンド IP 構成は、この v2 SKU では現在有効になっていません。Private frontend IP configuration is currently not enabled for this v2 SKU.

  2. [パブリック IP アドレス] として [新規作成] を選択し、パブリック IP アドレス名として「 myAGPublicIPAddress 」と入力し、 [OK] を選択します。Choose Create new for the Public IP address and enter myAGPublicIPAddress for the public IP address name, and then select OK.

  3. バックエンド を選択します。Select Next: Backends.

[バックエンド] タブBackends tab

バックエンド プールは、要求を処理するバックエンド サーバーに要求をルーティングするために使用されます。The backend pool is used to route requests to the backend servers that serve the request. バックエンド プールは、NIC、仮想マシン スケール セット、パブリック IP、内部 IP、完全修飾ドメイン名 (FQDN)、および Azure App Service などのマルチテナント バックエンドで構成できます。Backend pools can be composed of NICs, virtual machine scale sets, public IPs, internal IPs, fully qualified domain names (FQDN), and multi-tenant back-ends like Azure App Service.

  1. [バックエンド] タブで、 [+ バックエンド プールの追加] を選択します。On the Backends tab, select +Add a backend pool.

  2. 開いた [バックエンド プールの追加] ウィンドウで、次の値を入力して空のバックエンド プールを作成します。In the Add a backend pool window that opens, enter the following values to create an empty backend pool:

    • Name :バックエンド プールの名前として「 myBackendPool 」と入力します。Name : Enter myBackendPool for the name of the backend pool.
  3. [バックエンド ターゲット][ターゲットの種類] の下のドロップダウン リストで [仮想マシン] を選択します。Under Backend Targets , Target type , select Virtual machine from the drop-down list.

  4. [ターゲット] で、 myVM1 のネットワーク インターフェイスを選択します。Under Target select the network interface for myVM1.

  5. [追加] を選択します。Select Add.

  6. 手順を繰り返し、 myVM2 をターゲットとして指定した Images バックエンド プールと、 myVM3 をターゲットとして指定した Video バックエンド プールを追加します。Repeat to add an Images backend pool with myVM2 as the target, and a Video backend pool with myVM3 as the target.

  7. [追加] を選択してバックエンド プールの構成を保存し、 [バックエンド] タブに戻ります。Select Add to save the backend pool configuration and return to the Backends tab.

  8. [バックエンド] タブで、 [次へ:構成] を選択します。On the Backends tab, select Next: Configuration.

[構成] タブConfiguration tab

[構成] タブで、ルーティング規則を使用して作成したフロントエンドとバックエンド プールを接続します。On the Configuration tab, you'll connect the frontend and backend pool you created using a routing rule.

  1. [ルーティング規則] 列で [規則を追加する] を選択します。Select Add a rule in the Routing rules column.

  2. 開いた [ルーティング規則の追加] ウィンドウで、 [規則名] に「 myRoutingRule 」と入力します。In the Add a routing rule window that opens, enter myRoutingRule for the Rule name.

  3. ルーティング規則にはリスナーが必要です。A routing rule requires a listener. [ルーティング規則の追加] ウィンドウ内の [リスナー] タブで、リスナーの次の値を入力します。On the Listener tab within the Add a routing rule window, enter the following values for the listener:

    • [リスナー名] :リスナーの名前として「 myListener 」と入力します。Listener name : Enter myListener for the name of the listener.

    • [フロントエンド IP] : [パブリック] を選択して、フロントエンド用に作成したパブリック IP を選択します。Frontend IP : Select Public to choose the public IP you created for the frontend.

    • ポート :「 8080 」と入力します。Port : Type 8080

      [リスナー] タブで他の設定の既定値をそのまま使用し、 [バックエンド ターゲット] タブを選択して、ルーティング規則の残りの部分を構成します。Accept the default values for the other settings on the Listener tab, then select the Backend targets tab to configure the rest of the routing rule.

  4. [バックエンド ターゲット] タブで、 [バックエンド ターゲット][myBackendPool] を選択します。On the Backend targets tab, select myBackendPool for the Backend target.

  5. [HTTP 設定] には [新規作成] を選択して新しい HTTP 設定を作成します。For the HTTP setting , select Create new to create a new HTTP setting. HTTP 設定によって、ルーティング規則の動作が決まります。The HTTP setting will determine the behavior of the routing rule.

  6. 開いた [HTTP 設定の追加] ウィンドウで、 [HTTP 設定名] として「 myHTTPSetting 」と入力します。In the Add an HTTP setting window that opens, enter myHTTPSetting for the HTTP setting name. [HTTP 設定の追加] ウィンドウで他の設定の既定値をそのまま使用し、 [追加] を選択して [ルーティング規則の追加] ウィンドウに戻ります。Accept the default values for the other settings in the Add an HTTP setting window, then select Add to return to the Add a routing rule window.

  7. [パスベースのルーティング] で、 [パスベースの規則を作成する複数のターゲットを追加します] を選択します。Under Path-based routing , select Add multiple targets to create a path-based rule.

  8. [パス] に、「 /images/ *」と入力します。For Path , type /images/*.

  9. [パスの規則名] に、「 Images 」と入力します。For Path rule name , type Images.

  10. [HTTP 設定] で、 [myHTTPSetting] を選択します。For HTTP setting , select myHTTPSetting

  11. [バックエンド ターゲット] で、 [Images] を選択します。For Backend target , select Images.

  12. [追加] を選択して、パスの規則を保存し、 [ルーティング規則の追加] タブに戻ります。Select Add to save the path rule and return to the Add a routing rule tab.

  13. 手順を繰り返し、Video 用の別の規則を追加します。Repeat to add another rule for Video.

  14. [追加] を選択して、ルーティング規則を追加し、 [構成] タブに戻ります。Select Add to add the routing rule and return to the Configuration tab.

  15. タグ次へ:確認と作成 をクリックします。Select Next: Tags and then Next: Review + create.

注意

既定のケースを処理するために、カスタム / * パス規則を追加する必要はありません。You do not need to add a custom / * path rule to handle default cases. これは、既定のバックエンド プールによって自動的に処理されます。This is automatically handled by the default backend pool.

[確認と作成] タブReview + create tab

[確認と作成 ] タブの設定を確認し、 [作成] を選択して、仮想ネットワーク、パブリック IP アドレス、およびアプリケーションゲートウェイを作成します。Review the settings on the Review + create tab, and then select Create to create the virtual network, the public IP address, and the application gateway. Azure によるアプリケーション ゲートウェイの作成には数分かかる場合があります。It may take several minutes for Azure to create the application gateway. 次のセクションに進む前に、デプロイが正常に完了するまで待機します。Wait until the deployment finishes successfully before moving on to the next section.

アプリケーション ゲートウェイのテストTest the application gateway

  1. [すべてのリソース] を選択し、 myAppGateway を選択します。Select All resources , and then select myAppGateway.

    アプリケーション ゲートウェイのパブリック IP アドレスの記録

  2. そのパブリック IP アドレスをコピーし、ブラウザーのアドレス バーに貼り付けます。Copy the public IP address, and then paste it into the address bar of your browser. http:///52.188.72.175:8080 などです。Such as, http://52.188.72.175:8080.

    アプリケーション ゲートウェイでのベース URL のテスト

    ポート 8080 のリスナーは、この要求を既定のバックエンド プールにルーティングします。The listener on port 8080 routes this request to the default backend pool.

  3. URL を http://<ip-address>:8080/images/test.htm に変更します。<ip-address> は、使用している IP アドレスに置き換えてください。次の例のようになります。Change the URL to http://<ip-address>:8080/images/test.htm , replacing <ip-address> with your IP address, and you should see something like the following example:

    アプリケーション ゲートウェイでのイメージ URL のテスト

    ポート 8080 のリスナーは、この要求を Images バックエンド プールにルーティングします。The listener on port 8080 routes this request to the Images backend pool.

  4. URL を http://<ip-address>:8080/video/test.htm に変更します。<ip-address> は、使用している IP アドレスに置き換えてください。次の例のようになります。Change the URL to http://<ip-address>:8080/video/test.htm , replacing <ip-address> with your IP address, and you should see something like the following example:

    アプリケーション ゲートウェイでのビデオ URL のテスト

    ポート 8080 のリスナーは、この要求を Video バックエンド プールにルーティングします。The listener on port 8080 routes this request to the Video backend pool.

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

リソース グループおよび関連するすべてのリソースは、不要になったら削除します。When no longer needed, delete the resource group and all related resources. リソース グループを選択し、 [リソース グループの削除] を選択してください。To do so, select the resource group and select Delete resource group.

次の手順Next steps