阿里云網絡型負載均衡NLB(Network Load Balancer)支持TCP、UDP和TCPSSL協議,提供了強大的四層負載均衡能力。如果您需要快速創建一個NLB實例,并將來自客戶端的訪問請求轉發至后端服務器,請參考本文操作實現IPv4服務的負載均衡。
前提條件
您已在華東2(上海)地域創建了一個專有網絡VPC1,并分別在可用區E和可用區G創建了一個交換機VSW1和VSW2。具體操作,請參見創建專有網絡和交換機。
您已分別在VSW1和VSW2創建ECS01和ECS02實例,且ECS01和ECS02實例中部署了應用服務。
關于創建ECS實例,請參見自定義購買實例。
本文ECS01和ECS02部署測試應用示例如下:
yum install -y nginx systemctl start nginx.service cd /usr/share/nginx/html/ echo "Hello World ! this is ECS01." > index.html
yum install -y nginx systemctl start nginx.service cd /usr/share/nginx/html/ echo "Hello World ! this is ECS02." > index.html
本文VPC實例的相關配置如下所示,僅供參考。
配置 | 說明 |
名稱 | VPC1 |
地域 | 華東2(上海) |
IPv4網段 | 192.168.0.0/12 |
交換機 | 名稱:VSW1 可用區:可用區E IPv4網段:192.168.5.0/24 |
名稱:VSW2 可用區:可用區G IPv4網段:192.168.6.0/24 |
本文ECS實例的相關配置如下所示,僅供參考。
名稱 | 地域 | 所屬VPC | 所屬可用區及交換機 | ECS配置 |
ECS01 | 華東2(上海) | VPC1 | 可用區E | VSW1 | 鏡像:Alibaba Cloud Linux 3.2104 LTS 64位 |
ECS02 | 可用區G | VSW2 |
步驟一:創建NLB實例
- 登錄網絡型負載均衡NLB控制臺。
在頂部菜單欄,選擇NLB實例所屬的地域。
在實例頁面,單擊創建網絡型負載均衡。
在網絡型負載均衡(按量付費)購買頁面,完成以下配置。然后單擊立即購買并根據控制臺提示完成實例開通。
此處僅列出和本文強相關的配置項,其他未列出的配置項使用默認值。關于參數的更多信息,請參見創建和管理NLB實例。
配置
說明
地域
選擇實例所屬的地域。
實例網絡類型
選擇實例網絡類型,系統會根據您的選擇分配私網或公網服務地址。本文選擇公網。
VPC
選擇實例所屬的VPC。
可用區
至少選擇2個可用區。本文選擇上海 可用區E及該可用區下的交換機,上海 可用區G及該可用區下的交換機。
協議版本
選擇實例的協議版本。本文選擇IPv4。
實例名稱
自定義實例名稱。
資源組
選擇所屬的資源組。
服務關聯角色
首次創建NLB實例時,需要單擊創建服務關聯角色,創建一個名稱為AliyunServiceRoleForNlb的服務關聯角色。系統會為該角色添加名稱為AliyunServiceRolePolicyForNlb的權限策略,授予NLB擁有訪問其他云產品實例的權限。更多操作,請參見網絡型負載均衡NLB系統權限策略參考。
步驟二:創建服務器組
在左側導航欄,選擇 。
在服務器組頁面,單擊創建服務器組。
在創建服務器組對話框中,完成以下配置,然后單擊創建。
關鍵配置信息可參考下表,其他未列出的配置項使用默認值。關于參數的更多信息,請參見創建服務器組。
配置
說明
服務器組類型
服務器組掛載的后端服務器類型。本文選擇服務器類型。
服務器組名稱
輸入服務器組名稱。
VPC
從VPC下拉列表中選擇一個VPC,只有該VPC下的服務器可以加入到該服務器組。
選擇后端協議
選擇一種后端協議。本文選擇TCP。
選擇調度算法
選擇一種調度算法。本文選擇加權輪詢。
健康檢查
開啟健康檢查,健康檢查保持默認配置。
待服務器組創建成功后,單擊其實例ID,然后單擊后端服務器頁簽。
單擊添加后端服務器,在添加后端服務器面板,選中ECS01與ECS02,單擊下一步。
在配置端口和權重配置向導,配置端口為80,權重默認值為100,然后單擊確定。
步驟三:配置監聽
在左側導航欄,選擇 。
在實例頁面,單擊目標實例右側的創建監聽。
在負載均衡業務配置向導配置監聽,配置以下參數,然后單擊下一步。
此處僅列出和本文強相關的配置項,其他未列出的配置項使用默認值。關于配置監聽的更多操作,請參見添加TCP監聽。
參數
描述
選擇監聽協議
選擇監聽的協議類型。本文選擇TCP。
監聽端口
用來接收請求并向后端服務器進行請求轉發的監聽端口。本文輸入80。
監聽名稱
輸入自定義監聽名稱。
高級配置
本文保持默認,可單擊修改進行設置。
在選擇服務器組配置向導,選擇服務器類型及服務器類型下的目標服務器組,查看已添加的后端服務器信息,然后單擊下一步。
在配置審核配置向導,確認配置信息,然后單擊提交。
單擊知道了返回監聽頁簽,查看目標監聽的健康檢查狀態列為正常時,表示后端服務器ECS01和ECS02實例可以正常處理NLB實例轉發的請求。
步驟四:設置域名解析
實際業務場景中,建議您使用自有域名,通過CNAME解析的方式將自有域名指向NLB實例域名。
在左側導航欄,選擇 。
在實例頁面,復制已創建的NLB實例的DNS名稱。
執行以下步驟添加CNAME解析記錄。
說明對于非阿里云注冊域名,需先將域名添加到云解析控制臺,才可以進行域名解析設置。具體操作,請參見域名管理。如果您是阿里云注冊的域名,請直接執行以下步驟。
登錄域名解析控制臺。
在權威域名解析頁面,找到目標域名,在操作列單擊解析設置。
在解析設置頁面,單擊添加記錄。
在添加記錄面板,配置以下信息完成CNAME解析配置,然后單擊確定。
配置
說明
記錄類型
在下拉列表中選擇CNAME。
主機記錄
您的域名的前綴。本文輸入@。
說明創建域名為根域名時,主機記錄為@。
解析請求來源
選擇默認。
記錄值
輸入域名對應的CNAME地址,此處為NLB實例的DNS名稱。
TTL
全稱Time To Live,表示DNS記錄在DNS服務器上的緩存時間,本文使用默認值。
步驟五:驗證結果
測試NLB可用性:
以任意一臺可以訪問公網的Linux客戶端為例。如果未安裝telnet,以CentOS系統為例可以參考執行
yum install -y telnet
安裝telnet。執行
telnet 域名 端口
命令,收到回復報文Connected to nlb-...,則表示NLB可以將請求轉發至后端服務器。Trying *.*.*.*... Connected to www.example.com. Escape character is '^]'.
通過瀏覽器輸入域名,例如
http://域名
,可以看到類似下圖所示,表示NLB可以將請求轉發至后端服務器。
(可選)故障模擬:
停用ECS01服務。在ECS01中執行
systemctl stop nginx.service
停用應用。客戶端再次執行
telnet 域名 端口
命令,仍然收到回復報文Connected to nlb-...Trying *.*.*.*... Connected to www.example.com. Escape character is '^]'.
通過瀏覽器輸入域名,例如
http://域名
,可以看到類似下圖所示,表示NLB可以將請求轉發至后端服務器。啟用ECS01服務,停用ECS02服務。在ECS01中執行
systemctl start nginx.service
重新啟動應用,在ECS02中執行systemctl stop nginx.service
停用應用。客戶端再次執行
telnet 域名 端口
命令,仍然收到回復報文Connected to nlb-...Trying *.*.*.*... Connected to www.example.com. Escape character is '^]'.
通過瀏覽器輸入域名,例如
http://域名
,可以看到類似下圖所示,表示NLB可以將請求轉發至后端服務器。如上表明后端單臺服務器故障不影響NLB可用性。
釋放資源
清理ECS、安全組等資源:
刪除ECS01實例及其安全組:
登錄云服務器ECS實例控制臺,頂部選擇實例所屬地域,單擊ECS01實例右側的,彈出的窗口中選擇釋放,立即釋放實例并確認。
登錄云服務器ECS安全組控制臺,頂部選擇實例所屬地域,勾選ECS01自定義安全組并單擊刪除,刪除安全組。
參照上述步驟,刪除ECS02實例及對應安全組資源。
刪除域名解析記錄;
刪除域名解析記錄,請參見刪除域名解析記錄。
清理NLB資源:
登錄網絡型負載均衡NLB控制臺,頂部選擇實例所屬地域,單擊實例右側的,彈出的窗口中選擇釋放并確認。
登錄網絡型負載均衡NLB控制臺,頂部選擇實例所屬地域,在服務器組菜單單擊服務器組右側的,彈出的窗口中選擇刪除并確認。
清理VPC資源:
登錄專有網絡VPC控制臺,頂部選擇實例所屬地域。
單擊實例右側刪除,刪除時并且勾選強制刪除,完成VPC與交換機資源的刪除。
相關文檔
了解NLB的應用場景、組成等信息,請參見什么是網絡型負載均衡NLB。
了解NLB的功能特性,請參見功能特性。
了解NLB的配額及提升配額方式,請參見使用限制。
了解NLB支持的地域信息,請參見NLB支持的地域與可用區。
了解NLB計費文檔,請參見NLB產品計費。