第一部分:搭建網站服務架構
網站服務將由負載平衡器做為整體網頁架構的最前端,在使用者發起連線後,負載平衡器將會把使用者流量疏導至後方的網頁伺服器,並決定由哪一台伺服器提供網頁服務。
Step 1. 建立前端負載平衡器
- 由服務列表點選「負載平衡」進入「負載平衡器管理」頁面,點擊「+建立」
- 輸入負載平衡器設定資訊,完成後點擊「下一步:檢閱+建立>」
1. 類型:選擇「應用程式負載平衡器」
2. 監聽器:
a. 協定選擇 「HTTP」,連接埠設定 「80」,提供 HTTP 服務
b. 協定選擇 「HTTPS with SSL」,連接埠設定 「443」,提供 HTTPS 加密傳輸服務
3. 平衡方法:選擇 「ROUND_ROBIN」
4. 虛擬網路:選擇需架設負載平衡器的網段
警告
負載平衡器與 Step 2 的虛擬運算個體建立於相同虛擬網路上,才能發揮平衡流量之作用。
信息
TWSC 提供三種負載平衡器平衡方法:
- ROUND_BIN (循環分配):負載平衡器會輪流將使用者分配至不同伺服器,因每台伺服器權重皆相同,所以會照順序輪流提供使用者服務。
- LEAST_CONNECTION (依連線數分配):負載平衡器會偵測伺服器群,將使用者分配至連線數少的伺服器。
- SOURCE_IP (依來源 IP 分配):此模式是依來源位址(使用者的 IP),由負載平衡器來分配使用者至不同的網頁伺服器,在下一次進行連線時,系統會再重新分配。
- 建立完成後,回到負載平衡器列表,請點選該筆平衡器。
- 進入詳細資料頁,等到狀態變成
ACTIVE
後,才可繼續編輯。 - VIP (Virtual IP),可申請 DNS 以對外提供給使用者,透過此 IP 使用您的網頁服務。
Step 2. 建立後方網頁伺服器,架設 NGINX 網頁服務
- 進入虛擬運算管理頁,建立名為 lbssl01 與 lbssl02 的兩台虛擬運算個體。
信息
- 詳細虛擬運算個體建立步驟,請參考虛擬運算服務。
- 範例選用 Ubuntu 映像 檔建立,虛擬網路和負載平衡選用相同網路,請開啟公用 IP 供後續網站管理員維護使用,其他設定皆以預設資訊建立。
提示
您也可以在lbssl01 個體將網頁架設完成後,再使用映像檔快速建立 lbssl02 網頁伺服器,節省應用程式重複安裝的成本。
信息
後續步驟將使用虛擬運算個體的私有 IP,請進入詳細資料頁面,並將此資訊記下來方便後續使用。
- 使用公用 IP 連線進入 lbssl01 與 lbssl02 個體後,分別使用以下 3 個指令,將 2 台個體安裝 NGINX 架設網頁服務:
信息
- 詳細虛擬運算個體連線步驟,請參考連線虛擬運算個體。
- 範例以 NGINX 做為架設網站的工具,您可以依需求安裝不同工具。
sudo su
apt update
apt install -y nginx
- 安裝好後,即可開始在 lbssl01 的個體,架設您的網頁,或依照範例輸入以下指令,編輯靜態網頁示意內容:
vim /var/www/html/index.nginx-debian.html
- 鍵盤按下 i 進入編輯模式,並將
\<h1>\</h1>
中間字串,改為 「Hi, this is VCS lbssl01!」
- 再按下鍵盤 Esc 跳離編輯模式,並輸入
:wq!
與按下 Enter,存檔離開。
- 再輸入指令,重啟 NGINX
systemctl restart nginx
- 接著同樣以上述的步驟,修改 lbssl02 的內容,網頁顯示字串可以修改為不同的內容:「Hi, this is VCS lbssl02!」以利檢查負載平衡的作用。
Step 3. 設定個體的安全性群組:開啟 80 連接埠
透過設定安全性群組,建立 80 連接埠,讓負載平衡器能串接後方網頁伺服器 (虛擬運算個體)、分配使用者的請求,並取得回覆傳送給使用者。
- 請點選左側「聯網與資安」> 「安全性群組」
- 並點選建立的 lbssl01 個體
- 再點選進入個體的安全性群組,點選「+建立」
- 設定資訊
- 方向:選擇「Ingress」(使用者從外部連線,進入此個體使用網頁服務)
- 連接埠範圍(最小)、連接埠範圍(最大):皆設定「80」(僅開放 80 連接埠,提供 HTTP 服務,網頁程式將自動將連線導向 443 連接埠,提供 HTTPS 網頁服務。)
- 協定:選擇「TCP」
- CIDR:填入虛擬網路之 CIDR,確保同網段的負載平衡器可存取此個體
- 個體 lbssl02,也請依相同步驟新增 80 連接埠。
Step 4. 將虛擬運算個體連結至負載平衡器
- 進入「負載平衡器詳細資料頁」> 點選「編輯」。
- 先將 lbssl01 個體
<私有IP>:<連接埠> (80)
資訊,新增到此負載平衡器 > 點選「確認」,完成設定。警告此時請勿新增 lbssl02 至負載平衡器,請待 SSL 憑證申請完成後再新增。