Azure Application Gateway(二)對後端 VM 進行負載均衡

Grant_Allen發表於2020-08-13

一,引言

  上一節有講到使用 Azure Application Gateway 為我們後端型別為 Web App 的 Demo 專案提供負載均衡,Azure Application Gateway 的後端池的目標型別可以是多中型別,如下圖所示:

目標型別分別是:

1,IP address or FQDN

2,Virtual Machine

3,VMSS

4,App Services

這個我也不用多說了,今天我們將基礎設施架構圖中的App Services 換成 VM,重新新增Azure Application Gateway的後端池的目標型別

--------------------我是分割線--------------------

 

 --------------------我是分割線--------------------

Azure Web App 和Azure VM 部署系列:

1,Azure Web App(一)釋出你的Net Core Web 專案

2,Azure Web App(二)使用部署槽切換部署環境程式碼

3,Azure Web App(三)切換你的Net Core Web 專案的資料庫連線字串

4,Azure Traffic Manager(一) 為我們的Web專案提供負載均衡

5,Azure Traffic Manager(二) 基於權重與基於優先順序的路由策略為我們的Web專案提供負載均衡 

6,Azure Load Balance(一) 為我們的Web專案提供負載均衡 

7,Azure Load Balancer(二) 基於內部的負載均衡來轉發訪問請求 

8,Azure Application Gateway(一)對後端 Web App 進行負載均衡 

9,Azure Application Gateway(二)對後端 VM 進行負載均衡  

二,正文

1,建立應用程式閘道器,新增目標型別為VM的例項到後端池

Azure Portal 中點選 “Create a Resource”,搜尋框中輸入 “Application Gateway”,進行搜尋/

Resource group 選擇:“Web_Test_AG_RG”

Application gateway name:“cnbateblogweb_applicationgateway_vm”

Region 選擇:East Asia

其他都是預設

Virtual network 點選建立一個新的

建立一個新的 Virtual network

Name :cnbateblogweb_NET,刪除預設的 default 的子網,新增一個新的子網

Subnet name:cnbateblogwen_SubNET

Address range:10.0.1.0/24

點選 “ok”

點選 “Next:Frontends” 進而設定應用程式閘道器的前端 ip

接下來,關於應用程式閘道器的前端 ip

Frontend IP address type 選擇:Public

Public IP address 選擇建立一個新的Public IP

點選 “Next:Backends” 進行下一步設定應用程式閘道器的後端池

點選 “Add a Backend pool” 需要新增後端池

Name:“cnbateblogweb_applicationgateway_vm_backendpool”

Add backend pool without target 選擇:“Yes”

點選 “Add”

點選 “Next:Configuration>” 配置路由資訊

點選  "Add a routing rule" 新增路由資訊

Rule name:“vm_rule”

Listener name:vm_http_listener

Frontend IP 選擇剛建立好的 Frontends “Public IP”

然後點選 “Backend targets” 新增後端目標的路由規則 

Target type 選擇 “Backend pool”

Backend target 選擇 建立好的後端池 “cbbateblogweb_applicationgateway_vm_backendpool”

HTTP setting 點選 “Add new” 建立一個新的 HTTP Setting

Http settings name:“vm_http_setting”

Backend protocol 選擇:"HTTP"

Backend port:“80”

點選 “Add” 跳轉到 後端池路由設定頁面

 點選 “Add”,新增路由資訊

然後我們點選 “Next:Tags >”,“Next:Review + create >” 進行建立預校驗,等待校驗完成後,我們點選 “Create” 進行建立 Azure Application Gateway

選擇 “Settings=> Backend pools” 選擇 之前建立好的 “cnbateblogweb_applicationway_vm_backendpool” 後端池,我們需要將之前建立好的兩臺 vm 新增進去(之前在講Azure Load Balancer 時建立的cnbateblogweb01 和 cnbateblogweb02)

Target type 選擇:"Virtual machine"

Target 選擇之前建立好的vm

點選 “Save” 進行儲存

 

接下來,我們需要設定健康檢查,選擇 “Settings=>Health probes”,點選 “Add” 按鈕

Name:“cnbateblogweb_vm001_healthcheck”

Protocol 選擇:“HTTP”

Host :選擇 cnbateblogweb01 這臺 vm 的 Public IP

Path:“/”(當前IP的根目錄)

nterval(間隔時間) 從30 秒  我們改為 2 秒

Timeout(超時時間)從30 秒  我們改為 5 秒

Unhealthy threashod(不正常閾值) 從 3 次  我們改為1次

點選 “Add”,進行新增操作

我們使用同樣的配置再次配置對cnbateblogweb02的檢查檢查,點選 “Add”

 

選擇選擇選單的 “Monitoring=》Backend health” 我們可以檢視一下後端池執行狀態

最後,我們在瀏覽器中進行訪問測試一下,如下圖所示

 

ok,成功,撒花 ?????

三,結尾

  今天我們簡單演示了一下我們將架構圖中的 Web App 替換成 VM ,通過建立Application Gateway,新增後端池,包含兩臺 vm,對後端 vm上掛載的專案網站進行負載均衡,在此示例中,我們建立了一個新的Azure Application gateway,並且建立空的後端池,然後將後端目標(兩臺之前建立好的vm)新增到後端池。

作者:Allen 

版權:轉載請在文章明顯位置註明作者及出處。如發現錯誤,歡迎批評指正。

相關文章