如何设定 GCP HTTP(S) 负载平衡器
Posted 漫游云端
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何设定 GCP HTTP(S) 负载平衡器相关的知识,希望对你有一定的参考价值。
设定 GCP HTTP(S) load balancing
此教學帶您手把手使用 GCP console 建立 HTTP(S) load balancer。
Step 1 建立 instances
進到 GCP console / Compute Engine / Create VM instances 的頁面,建立兩個 f1-micro 的 instances。名為 lb-test-1 以及 lb-test-2 的 VM instances。在建立 instances 前也需要加上安裝 nginx 的 startup script,這樣建立時會一同幫使用者架設簡易的 web server。
記得要幫 instances 加上 lb-test 的 tags,晚點在設定防火牆的時候會用到。
在 Management 的分頁找到 Startup script 區塊並填入以下指令:
apt-get install nginx-light -y && echo "Hello $HOSTNAME"\
| tee "/var/www/html/index.html" > /dev/null
GCP 將在建立 instance 後幫您架設一個簡易的 web server。
Step 2 建立 Unmanaged instance group 並加入 instances
接著,進入到 Compute Engine / Instance group / Create a new instance group 的頁面。建立一個 unmanaged instance group,並把剛剛建立的兩個 instance 也加入到該 instance group。設定好之後點選 create 建立 instance group。
Step 3-1 建立 HTTP(S) Load Balancer – 新增 Backend Service
進入到 Network services / Load balancing 的頁面,並點選 Create Load Balancer 的按鈕。
點選 HTTP(S) Load Balancing 區塊的 Start configuration 進行設定
點選 Create Backend Service 進行後端伺服器的設定
將 instance group(lb-test) 加入 backend service 的時候,我們需要為每個 instance group 指定它能負載的量,這裡我們以 CPU utilizaton 做為判斷負載量的依據,最高的 CPU utilization 設定為 80% ,並把 Capacity 設定為 75% ,這樣設定後當 instance 的 CPU utilization 到達 60% ( 80% * 75% )時, backend service 就會暫時停止對該 instance 發送 request ,直到該 instance 的 CPU utilization 低於 60% 才會再度發送 request 給它。
Step 3-2 建立 HTTP(S) Load Balancer – 新增 Health Check
建立完 Backend service 之後,在同一個頁面的下方有一個區塊是可以選擇 Health check 的,請選擇 Create another health check。
依照上圖的設定,Check interval 表示 health check 探針每十秒會發送一個請求給 instance group 裡面的 instances。Timeout 是指發送請求後,超過五秒沒有收到回應就會視為失敗。Healthy threshold,連續兩次收到成功的回應則視該 instance 為健康的 instance;Unhealthy threshold,連續三次未收到成功的回應則視該 instance 為不健康的 instance。
建立完之後可以看到 Backend configuration 以及 Host and path rules 已經設定完畢。Host and path rules 我們這邊使用預設的 root path,如果需要更進階的路徑設定可以參考文件。
Step 3-3 建立 HTTP(S) Load Balancer – 設定 Front-end configuration(包括設定固定 IP)
設定 Load balancer 的 front-end。
點選 Create IP address 為 Front-end 註冊一個固定的 IP。
設定完畢後即可創建 Load Balancer,需要等待數分鐘讓 Load Balancer 啟用。
Step 4 設定 Health check 防火牆
設定好 Load balancer 之後,需要設定 health check 探針的防火牆。進到 VPC networks / Firewall rules 的頁面,點選 Create Firewall rules。
首先,target 要選取 Specified target tags 並填入 lb-test。35.191.0.0/16 以及 130.211.0.0/22 為 Health check 探針的來源 IP 範圍並開放 tcp 80 port。填寫完畢之後按 create 即可。
過一段時間就在 Load balancer 的頁面看到綠色的勾勾,點進去就會發現原本健康的 instances 為 0 ,現在因為設定完防火牆所以健康的 instances 變為 2。
Step 5 測試 Load Balancer
開啟新的瀏覽器分頁,輸入 Load Balancer 的 IP 以及 port,例如:http://[load balancer IP]:80。重新整理幾次就會看到頁面顯示不同的 instance name。
以上是关于如何设定 GCP HTTP(S) 负载平衡器的主要内容,如果未能解决你的问题,请参考以下文章