服務(wù)器負載均衡技術(shù)可以提升企業(yè)的業(yè)務(wù)處理能力,方便后續(xù)的網(wǎng)絡(luò)運維和調(diào)整。
日益增長的網(wǎng)絡(luò)業(yè)務(wù)量對服務(wù)器造成了巨大壓力,當單個服務(wù)器無法滿足網(wǎng)絡(luò)需求時,企業(yè)一般會采取更換高性能設(shè)備或增加服務(wù)器數(shù)量的方法來解決性能不足的問題。如果更換為高性能的服務(wù)器,則已有低性能的服務(wù)器將閑置,造成了資源的浪費。而且后續(xù)肯定會面臨新一輪的設(shè)備升級,導(dǎo)致投入巨大,卻無法從根本上解決性能的瓶頸。
如果單純地增加服務(wù)器的數(shù)量,則涉及到如何分配流量、服務(wù)器間的協(xié)同機制等很多復(fù)雜的問題。既要考慮成本因素和現(xiàn)實需求,又要兼顧日后的設(shè)備升級和擴容,服務(wù)器負載均衡(SLB,server load balancing)技術(shù)由此應(yīng)運而生。
應(yīng)用場景
>>數(shù)據(jù)中心的服務(wù)器負載均衡:
數(shù)據(jù)中心是一整套復(fù)雜的設(shè)施,不僅包含計算機系統(tǒng),還包含服務(wù)器、環(huán)境控制設(shè)備、監(jiān)控設(shè)備以及各種安全設(shè)備等。服務(wù)器作為數(shù)據(jù)中心的重要組成部分,對外提供數(shù)據(jù)處理、數(shù)據(jù)存儲和數(shù)據(jù)交換等各種服務(wù)。FW作為數(shù)據(jù)中心的安全網(wǎng)關(guān),不僅可以提供完備的安全防護功能,還可以通過服務(wù)器負載均衡功能解決服務(wù)響應(yīng)時長和設(shè)備處理性能等方面的問題,提升用戶的使用體驗。
>>企業(yè)園區(qū)的服務(wù)器負載均衡:
隨著企業(yè)的大規(guī)模擴展和業(yè)務(wù)量的爆炸式增長,企業(yè)網(wǎng)絡(luò)要處理的數(shù)據(jù)量也在大幅度增加。企業(yè)新建園區(qū)網(wǎng)或擴容原有網(wǎng)絡(luò)的服務(wù)能力時,需要考慮服務(wù)能力和投入資金的關(guān)系,甚至要兼顧日后擴展的收益性。FW作為企業(yè)園區(qū)的安全網(wǎng)關(guān),同時為園區(qū)內(nèi)的用戶和服務(wù)器集群提供安全隔離保護。配置服務(wù)器負載均衡功能后,用戶可以快速獲取企業(yè)資源和服務(wù),提升了用戶體驗。對于企業(yè)來說,也方便日后對服務(wù)能力進行擴容,降低了企業(yè)的投入成本。
>>多出口服務(wù)器集群的負載均衡:
為了提高服務(wù)的可靠性,服務(wù)器集群所在的網(wǎng)絡(luò)一般會有多個出口,并由不同的ISP提供。這樣,當一個出口的網(wǎng)絡(luò)無法正常使用時,用戶可以從其他ISP的網(wǎng)絡(luò)獲取服務(wù)。典型的多出口場景是雙出口場景。
技術(shù)原理
服務(wù)器負載均衡技術(shù)的一些常見概念如下:
實服務(wù)器:處理業(yè)務(wù)流量的實體服務(wù)器,客戶端發(fā)送的服務(wù)請求最終是由實服務(wù)器處理的。
實服務(wù)器組:由多個實服務(wù)器組成的集群,對外提供特定的一種服務(wù)。
虛擬服務(wù)器:實服務(wù)器組對外呈現(xiàn)的邏輯形態(tài),客戶端實際訪問的是虛擬服務(wù)器。
HTTP調(diào)度策略:FW分配業(yè)務(wù)流量給實服務(wù)器組時依據(jù)的規(guī)則,不同的調(diào)度策略得到不同的分配結(jié)果。僅適用于HTTP和HTTPS(HTTPS配置SSL卸載)協(xié)議。
負載均衡算法:FW分配業(yè)務(wù)流量給實服務(wù)器時依據(jù)的算法,不同的算法可能得到不同的分配結(jié)果。
會話保持:FW將同一客戶端一段時間內(nèi)的流量分配給同一個實服務(wù)器。
服務(wù)健康檢查:FW檢查服務(wù)器狀態(tài)是否正常的過程,可以增強為用戶提供服務(wù)的穩(wěn)定性。
配置案例
配置HTTP服務(wù)器的負載均衡
配置腳本如下:
操作步驟
>>配置各個接口的IP地址:
system-view
[FW] interface GigabitEthernet 1/0/1
[FW-GigabitEthernet1/0/1] ip address 1.1.1.1 24
[FW-GigabitEthernet1/0/1] quit
[FW] interface GigabitEthernet 1/0/2
[FW-GigabitEthernet1/0/2] ip address 192.168.1.254 24
[FW-GigabitEthernet1/0/2] quit
[FW] firewall zone untrust
[FW-zone-untrust] add interface GigabitEthernet 1/0/1
[FW-zone-untrust] quit
[FW] firewall zone dmz
[FW-zone-dmz] add interface GigabitEthernet 1/0/2
[FW-zone-dmz] quit
>>配置安全策略:
# 配置untrust到dmz的安全策略,允許Internet用戶訪問內(nèi)網(wǎng)的Web服務(wù)器。策略的目的地址應(yīng)該配置虛擬服務(wù)器的IP地址。
[FW] security-policy
[FW-policy-security] rule name policy1
[FW-policy-security-rule-policy1] source-zone untrust
[FW-policy-security-rule-policy1] destination-zone dmz
[FW-policy-security-rule-policy1] destination-address 1.1.1.10 24
[FW-policy-security-rule-policy1] action permit
[FW-policy-security-rule-policy1] quit
[FW-policy-security] quit
# 配置local到dmz的安全策略,允許FW向?qū)嵎?wù)器發(fā)送健康探測報文。
[FW] security-policy
[FW-policy-security] rule name policy2
[FW-policy-security-rule-policy2] source-zone local
[FW-policy-security-rule-policy2] destination-zone dmz
[FW-policy-security-rule-policy2] destination-address range 192.168.1.1 192.168.1.3
[FW-policy-security-rule-policy2] action permit
[FW-policy-security-rule-policy2] quit
[FW-policy-security] quit
>>配置服務(wù)器負載均衡功能和健康檢查功能:
# 開啟服務(wù)器負載均衡功能。
[FW] slb enable
# 配置會話保持。
[FW] slb
[FW-slb] persistence 0 Session
[FW-slb-persistence-1] type cookie-insert aging-time 600
[FW-slb-persistence-1] quit
# 配置負載均衡算法。
[FW-slb] group 0 Rserver
[FW-slb-group-0] metric weight-least-connection
# 配置實服務(wù)器Server1、Server2、Server3,服務(wù)器的權(quán)重值依次為4、2、1。
[FW-slb-group-0] rserver 0 rip 192.168.1.1 port 8080 weight 4 description server1
[FW-slb-group-0] rserver 1 rip 192.168.1.2 port 8080 weight 2 description server2
[FW-slb-group-0] rserver 2 rip 192.168.1.3 port 8080 weight 1 description server3
# 配置健康檢查功能。
[FW-slb-group-0] health-check type icmp tx-interval 5 times 3
[FW-slb-group-0] quit
# 配置虛擬服務(wù)器的協(xié)議類型。
[FW-slb] vserver 0 vs-http-1.1.1.10
[FW-slb-vserver-0] protocol http
# 配置虛擬服務(wù)器的IP地址和端口號。
[FW-slb-vserver-0] vip 0 1.1.1.10
[FW-slb-vserver-0] vport 80
# 配置會話保持。
[FW-slb-vserver-0] persistence Session
# 關(guān)聯(lián)虛擬服務(wù)器和實服務(wù)器組。
[FW-slb-vserver-0] group Rserver
[FW-slb-vserver-0] quit