Azure Application Gateway (3) 設置URL路由


  《Windows Azure Platform 系列文章目錄

  

  在之前的文章中,筆者介紹了Azure Web App可以設置URL路由。如下圖:

  

 

  在這里筆者簡單介紹一下,首先我們還是創建以下資源:

  1.創建一個新的Azure Resource Group,命名為LeiAppGWRG

  2.創建一個新的ARM Virtual Network,命名為LeiAppGatewayVNet

      有兩個Subnet,分別為web-subnet,CIDR: 10.0.0.0/24

      另外一個subnet,叫appgateway-subnet,專門給Application Gateway使用,CIDR:10.0.1.0/24

  3.在創建新的Application Gateway,命名為:LeiAppGateway

  需要注意:如果我們要針對80端口設置URL Routing,我們必須設置Listener Configuration為Port 81

  不可以是Port 80,因為會被占用需要修改

  不可以是Port 80,因為會被占用需要修改

  不可以是Port 80,因為會被占用需要修改

  

  然后等Azure Application Gateway創建完畢  

 

 

  在這里還需要強調一下,當我們接下來還要操作的步驟:

  1.針對80端口,增加Listener

  2.不要修改和使用默認的appGatewayBackendPool

  3.在Backend Pools,創建新的imagesBackendPool,並設置Backend Addresses

  4.在Backend Pools,創建新的videosBackendPool,並設置Backend Addresses

  5.最后配置一下Application Gateway的Rules

 

 

  1.接下來開始第一部分,針對80端口,增加Listener

  我們選擇Application Gateway,選擇Listener,然后點擊 + Basic。

  新增加針對80端口的Listerner: appGateway80Listener。如下圖:

  

 

  2.不要修改和使用默認的appGatewayBackendPool

 

  3.選擇Application Gateway,選擇Backend Pool,然后點擊Add。增加新的imagesBackendPool,並設置Backend Addresses

  當我們訪問這個imagesBackendPool的時候,Application Gateway會把請求發送到內網IP為10.0.0.4和10.0.0.5的這2台VM

  

    

  

  4.選擇Application Gateway,選擇Backend Pool,然后點擊Add。增加videosBackendPool,Address設置為10.0.0.11和10.0.0.12

  這樣我們訪問url路徑為/images的時候,Application Gateway會把請求發送到內網IP為10.0.0.11和10.0.0.12的這2台VM

  

 

 

  5.最后,我們設置Rules,點擊+ Path-based,命名為pathBasedRule。

  Listener選擇之前創建的appGateway80Listener

  Default backend pool為appGatewayBackendPool

  注意下圖的BackEndPool,選擇默認的appGatewayBackendPool和我們新創建的imagessBackendPool。 

  需要注意,當我們訪問Application Gateway的地址時候,訪問邏輯是這樣的:

  (1)如果我們訪問URL路徑為/images/*的時候,請求被發送到imagesBackendPool,對應的內網IP地址為10.0.0.4和10.0.0.5

  (2)如果我們訪問URL路徑為/videos/*的時候,請求被發送到videosBackendPool,對應的內網IP地址為10.0.0.11和10.0.0.12

  (3)當Path不匹配的時候,請求被發送到默認的imagesBackendPool。

  

   截圖如下:

  

  

  6.准備Backend Pool所需要的虛擬機。

  然后我們在先創建新的Azure ARM Storage Account,然后創建4台Windows Server 2012 R2的虛擬機,對應的IP如下:

虛擬機名稱 內網IP地址 Virtual Network子網 對應Application Gateway的Backend Pool 對應Application Gateway的訪問URL路徑 備注
ImagesVM01 10.0.0.4 web-subnet appGatewayBackendPool /images/* 安裝IIS,增加虛擬目錄images。修改IIS歡迎頁面為虛擬機機器名
ImagesVM02 10.0.0.5 web-subnet appGatewayBackendPool /images/* 安裝IIS,增加虛擬目錄images。修改IIS歡迎頁面為虛擬機機器名
VideosVM01 10.0.0.11 web-subnet videosBackendPool /videos/* 安裝IIS,增加虛擬目錄videos。修改IIS歡迎頁面為虛擬機機器名
VideosVM02 10.0.0.12 web-subnet videosBackendPool /videos/* 安裝IIS,增加虛擬目錄videos。修改IIS歡迎頁面為虛擬機機器名

  

  創建完畢后,請記住,因為我們針對Port 80設置Application Gateway,需要在上面的VM上安裝IIS,並增加相應的虛擬目錄。

  

  7.然后我們查看Azure Application Gateway,點擊Overview,就可以查看到這個Application Gateway的動態IP(注意是動態IP地址,不是靜態IP)和DNS Name。

  如下圖:

  

  動態IP是: 139.219.234.106

  DNS是:ceca34df-a6ed-4914-8137-f44223e220e6.chinacloudapp.cn

 

  8.我們訪問上面的Frontend Public IP Address,比如:

  http://139.219.234.106/images

  這個請求就會被發送到appGatewayBackendPool的兩台VM,內網IP分為別10.0.0.4和10.0.0.5

  

 

  我們訪問:http://139.219.234.106/videos/

  這個這個請求就會被發送到videosBackendPool的兩台VM,內網IP分為別10.0.0.11和10.0.0.12

  

 

 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM