下面是“黑夜路人”的《大型網(wǎng)站架構(gòu)優(yōu)化(PHP)與相關(guān)開源軟件使用建議》
=======================================
F5全稱: F5-BIG-IP-GTM 全球流量管理器.
是一家叫F5 Networks的公司開發(fā)的四~七層交換機,軟硬件捆綁.
據(jù)說最初用BSD系統(tǒng),現(xiàn)在是LINUX;硬件是Intel的PC架構(gòu),再加周邊的網(wǎng)絡(luò)和專用加速設(shè)備.
當(dāng)然要提提售價, 都是幾十萬RMB的身價.
這寶貝是用于對流量和內(nèi)容進行管理分配的設(shè)備,也就是負(fù)載均衡.
從名字就能看出來:BIG-IP.
外部看來是一個IP,內(nèi)部可卻是幾十臺應(yīng)用服務(wù)器.表現(xiàn)為一個虛擬的大服務(wù)器.
所以我才說: 好大一個IP.
LVS = Linux Virtual Server
是俺們中國人,一個叫章文嵩的博士推創(chuàng)開發(fā)出來的,
他的web:http://zh.linuxvirtualserver.org/
IBM網(wǎng)站的資料:集群的可擴展性及其分布式體系結(jié)構(gòu)(4)
博士關(guān)于LVS和F5的對比:
關(guān)于和F5的差別,很難一句話說明白掠归,都是做負(fù)載均衡的設(shè)備碘耳。
F5雖然也是基于BSD系統(tǒng)修改的(據(jù)說最新的基于Linux了)魔吐,但重要的交換部分,則是通過專門的交換芯片實現(xiàn)的(類似有了專門的圖像處理芯片亡笑,就可以省去大量的CPU對圖像處理的運算),這樣他的性能就不會很依賴于主機的操作系統(tǒng)的處理能力。
F5上負(fù)載均衡大多是基于NAT/SNAT瑰步,也可以實現(xiàn)Proxy,但用的較少,做為一個上市公司璧眠,F(xiàn)5自然在產(chǎn)品化程度上做的很好缩焦,無論配置管理方便性读虏、靈活性,性能和穩(wěn)定性上都比較好袁滥。
LVS在NAT模式下盖桥,和F5的功能基本上是一樣的,但畢竟LVS是純粹的軟件题翻,性能是依賴于主機的運算能力的揩徊。
而且,LVS是開源的項目嵌赠,不應(yīng)該和一個商業(yè)產(chǎn)品來比較塑荒,人家那是賣錢的,有很多人來維護和開發(fā)姜挺,而LVS一直是章博士義務(wù)來維護開發(fā)的齿税,想要更好的功能,就需要有更多的人參與進來才行炊豪。
說的相當(dāng)透徹了.
DNS輪詢是做負(fù)載均衡最簡單有效的實現(xiàn)方法,各方面代價都極低.貨好便宜量又足.
缺點就是由于沒有檢測機制, 不夠均衡,容錯反應(yīng)時間長.
國內(nèi)門戶用這個技術(shù)的很多,配合squid有很好的效果.
當(dāng)然,不做負(fù)載均衡, 直接從多個ISP拉幾根線,分別提供服務(wù)是最原始的方法.
CDN = Content Delivery Network凌箕,內(nèi)容分發(fā)網(wǎng)絡(luò)。
細(xì)究起來上面的都是cdn的實現(xiàn)方式.
國內(nèi)開放的服務(wù)很少(chinacache),國外卻非常流行.
就是提供緩存節(jié)點,把目標(biāo)網(wǎng)絡(luò)內(nèi)容的訪問轉(zhuǎn)化為臨近節(jié)點的訪問.
響應(yīng)速度/安全/透明/擴展,特別是中國這種還沒解放臺灣就南北分裂的網(wǎng)絡(luò)格局下,更為偉大.
不過也是貴族的服務(wù),建設(shè)成本很高.
ADSL + DDNS + CDN 也算是另一個建小站的途徑了.
把空間的租用費用投資在流量上, 直接有效. 不過電費和穩(wěn)定性上不容樂觀.
其實CDN不只是做網(wǎng)站服務(wù)的, 比如在韓國,多數(shù)的CND流量都是被網(wǎng)絡(luò)游戲占用了.
試想,如果能大范圍鋪開CDN節(jié)點, 那還有必要一個游戲分那么多區(qū),占用那么多服務(wù)器么?
結(jié)論是還有必要? 雖然確實訪問連接和響應(yīng)速度對現(xiàn)在的網(wǎng)絡(luò)游戲有很大影響,但開發(fā)瓶頸更在于計算能力和數(shù)據(jù)存儲訪問.
又一個試想,? 把CDN和P2P結(jié)合, 上網(wǎng)的個人PC只要提供CDN服務(wù), 就可以每月獲的xx美金的傭金.由資訊和應(yīng)用提供商買單.
怎么看這都是個良性發(fā)展的產(chǎn)業(yè)鏈, 就像google明年要推出免費手機,讓廣告商買單一樣.
不過唯一不高興的就應(yīng)該是ISP們了,現(xiàn)在bt這樣的共享都被封殺.
除非這個業(yè)務(wù)被他們自己壟斷,不然也是僵尸的下場.
用戶也不是百利無害的, 數(shù)據(jù)安全和資訊及時有挑戰(zhàn).
GV們也不是看戲的,現(xiàn)在還有網(wǎng)站可以封,寫個blog都要100萬注冊資金;
如果一堆SSL加密的數(shù)據(jù)四處流竄,神龍無首無尾,怎么屏蔽過濾,怎么防川啊~
回望眼,越看越像網(wǎng)摘,索性就再摘段完整的
F5功能介紹:
1.多鏈路的負(fù)載均衡和冗余
與互聯(lián)網(wǎng)絡(luò)相關(guān)的關(guān)鍵業(yè)務(wù)都需要安排和配置多條ISP接入鏈路以保證網(wǎng)絡(luò)服務(wù)的質(zhì)量溜在,消除單點故障陌知,減少停機時間。多條ISP接入的方案并不是簡單的多條不同的廣域網(wǎng)絡(luò)的路由問題掖肋,因為不同的ISP有不同自治域仆葡,所以必須考慮到兩種情況下如何實現(xiàn)多條鏈路的負(fù)載均衡:
more..
less..
內(nèi)部的應(yīng)用系統(tǒng)和網(wǎng)絡(luò)工作站在訪問互聯(lián)網(wǎng)絡(luò)的服務(wù)和網(wǎng)站時如何能夠在多條不同的鏈路中動態(tài)分配和負(fù)載均衡,這也被稱為OUTBOUND流量的負(fù)載均衡志笼。
互聯(lián)網(wǎng)絡(luò)的外部用戶如何在外部訪問內(nèi)部的網(wǎng)站和應(yīng)用系統(tǒng)時也能夠動態(tài)的在多條鏈路上平衡分配沿盅,并在一條鏈路中斷的時候能夠智能地自動切換到另外一條鏈路到達(dá)服務(wù)器和應(yīng)用系統(tǒng),這也被稱作為INBOUND流量的負(fù)載均衡纫溃。
F5 的BIG-IP LC可以智能的解決以上兩個問題:
對于OUTBOUND流量腰涧,BIG-IP LC接收到流量以后,可以智能的將OUTBOUND流量分配到不同的INTERNET接口紊浩,并做源地址的NAT窖铡,可以指定某一合法IP地址進行源地址的 NAT,也可以用BIG-IP LC的接口地址自動映射坊谁,保證數(shù)據(jù)包返回時能夠正確接收费彼。
對于INBOUND流量,BIG-IP LC分別綁定兩個ISP 服務(wù)商的公網(wǎng)地址口芍,解析來自兩個ISP服務(wù)商的DNS解析請求箍铲。BIG-IP LC不僅可以根據(jù)服務(wù)器的健康狀況和響應(yīng)速度回應(yīng)LDNS相應(yīng)的IP地址,還可以通過兩條鏈路分別與LDNS建立連接鬓椭,根據(jù)RTT時間判斷鏈路的好壞颠猴,并且綜合以上兩個參數(shù)回應(yīng)LDNS相應(yīng)的IP地址关划。
2.防火墻負(fù)載均衡
考慮到絕大多數(shù)的防火墻只能達(dá)到線速的30%吞吐能力,故要使系統(tǒng)達(dá)到設(shè)計要求的線速處理能力翘瓮,必須添加多臺防火墻贮折,以滿足系統(tǒng)要求。然而春畔,防火墻必須要求數(shù)據(jù)同進同出脱货,否則連接將被拒絕。如何解決防火墻的負(fù)載均衡問題律姨,是關(guān)系到整個系統(tǒng)的穩(wěn)定性的關(guān)鍵問題振峻。
F5的防火墻負(fù)載均衡方案,能夠為用戶提供異構(gòu)防火墻的負(fù)載均衡與故障自動排除能力择份。典型的提高防火墻處理能力的方法是采用“防火墻三明治”的方法扣孟,以實現(xiàn)透明設(shè)備的持續(xù)性。這可滿足某些要求客戶為成功安全完成交易必須通過同一防火墻的應(yīng)用程序的要求荣赶,也能夠維護原來的網(wǎng)絡(luò)安全隔離的要求凤价。F5標(biāo)準(zhǔn)防火墻解決方案如圖所示:
防火墻負(fù)載均衡連接示意圖
3.服務(wù)器負(fù)載均衡
對于所有的對外提供服務(wù)的服務(wù)器,均可以在BIG-IP上配置Virtual Server實現(xiàn)負(fù)載均衡拔创,同時BIG-IP可持續(xù)檢查服務(wù)器的健康狀態(tài)利诺,一旦發(fā)現(xiàn)故障服務(wù)器,則將其從負(fù)載均衡組中摘除剩燥。
BIG-IP利用虛擬IP地址(VIP由IP地址和TCP/UDP應(yīng)用的端口組成慢逾,它是一個地址)來為用戶的一個或多個目標(biāo)服務(wù)器(稱為節(jié)點:目標(biāo)服務(wù)器的IP地址和TCP/UDP應(yīng)用的端口組成,它可以是internet的私網(wǎng)地址)提供服務(wù)灭红。因此侣滩,它能夠為大量的基于TCP/IP的網(wǎng)絡(luò)應(yīng)用提供服務(wù)器負(fù)載均衡服務(wù)。根據(jù)服務(wù)類型不同分別定義服務(wù)器群組变擒,可以根據(jù)不同服務(wù)端口將流量導(dǎo)向到相應(yīng)的服務(wù)器君珠。BIG-IP連續(xù)地對目標(biāo)服務(wù)器進行L4到 L7合理性檢查,當(dāng)用戶通過VIP請求目標(biāo)服務(wù)器服務(wù)時娇斑,BIG-IP根椐目標(biāo)服務(wù)器之間性能和網(wǎng)絡(luò)健康情況策添,選擇性能最佳的服務(wù)器響應(yīng)用戶的請求。如果能夠充分利用所有的服務(wù)器資源毫缆,將所有流量均衡的分配到各個服務(wù)器舰攒,我們就可以有效地避免“不平衡”現(xiàn)象的發(fā)生。
利用UIE+iRules可以將TCP/UDP數(shù)據(jù)包打開悔醋,并搜索其中的特征數(shù)據(jù),之后根據(jù)搜索到的特征數(shù)據(jù)作相應(yīng)的規(guī)則處理兽叮。因此可以根據(jù)用戶訪問內(nèi)容的不同將流量導(dǎo)向到相應(yīng)的服務(wù)器芬骄,例如:根據(jù)用戶訪問請求的URL將流量導(dǎo)向到相應(yīng)的服務(wù)器猾愿。
4.系統(tǒng)高可用性
系統(tǒng)高可用性主要可以從以下幾個方面考慮:
4.1.設(shè)備自身的高可用性:F5 BIG-IP專門優(yōu)化的體系結(jié)構(gòu)和卓越的處理能力保證99.999%的正常運行時間,在雙機冗余模式下工作時可以實現(xiàn)毫秒級切換账阻,保證系統(tǒng)穩(wěn)定運行蒂秘,另外還有冗余電源模塊可選。在采用雙機備份方式時淘太,備機切換時間最快會在200ms之內(nèi)進行切換姻僧。BIG-IP 產(chǎn)品是業(yè)界唯一的可以達(dá)到毫秒級切換的產(chǎn)品, 而且設(shè)計極為合理,所有會話通過Active 的BIG-IP 的同時蒲牧,會把會話信息通過同步數(shù)據(jù)線同步到Backup的BIG-IP撇贺,保證在Backup BIG-IP內(nèi)也有所有的用戶訪問會話信息;另外每臺設(shè)備中的watchdog芯片通過心跳線監(jiān)控對方設(shè)備的電頻冰抢,當(dāng)Active BIG-IP故障時松嘶,watchdog會首先發(fā)現(xiàn),并通知Backup BIG-IP接管Shared IP挎扰,VIP等翠订,完成切換過程,因為Backup BIG-IP中有事先同步好的會話信息遵倦,所以可以保證訪問的暢通無阻尽超。
4.2.鏈路冗余:BIG-IP可以檢測每條鏈路的運行狀態(tài)和可用性,做到鏈路和ISP故障的實時檢測梧躺。一旦出現(xiàn)故障似谁,流量將被透明動態(tài)的引導(dǎo)至其它可用鏈路。通過監(jiān)控和管理出入數(shù)據(jù)中心的雙向流量燥狰,內(nèi)部和外部用戶均可保持網(wǎng)絡(luò)的全時連接棘脐。
4.3.服務(wù)器冗余,多臺服務(wù)器同時提供服務(wù)龙致,當(dāng)某一臺服務(wù)器故障不能提供服務(wù)時蛀缝,用戶的訪問不會中斷。BIG-IP可以在OSI七層模型中的不同層面上對服務(wù)器進行健康檢查目代,實時監(jiān)測服務(wù)器健康狀況屈梁,如果某臺服務(wù)器出現(xiàn)故障,BIG-IP確定它無法提供服務(wù)后榛了,就會將其在服務(wù)隊列中清除在讶,保證用戶正常的訪問應(yīng)用,確彼螅回應(yīng)內(nèi)容的正確性构哺。
5.高度的安全性
BIG-IP采用防火墻的設(shè)計原理,是缺省拒絕設(shè)備,它可以為任何站點增加額外的安全保護曙强,防御普通網(wǎng)絡(luò)攻擊残拐。可以通過支持命令行的SSH或支持瀏覽器管理的SSL方便碟嘴、安全的進行遠(yuǎn)程管理溪食,提高設(shè)備自身的安全性;能夠拆除空閑連接防止拒絕服務(wù)攻擊娜扇;能夠執(zhí)行源路由跟蹤防止IP欺騙错沃;拒絕沒有ACK 緩沖確認(rèn)的SYN防止SYN攻擊;拒絕teartop和land攻擊雀瓢;保護自己和服務(wù)器免受ICMP攻擊枢析;不運行SMTP、FTP致燥、TELNET或其它易受攻擊的后臺程序筒捺。
BIG-IP的Dynamic Reaping特性可以高效刪除各類網(wǎng)絡(luò)DoS攻擊中的空閑連接族淮,這可以保護BIG-IP不會因流量過多而癱瘓税产。BIG-IP可以隨著攻擊量的增加而加快連接切斷速率祭示,從而提供一種具有極強適應(yīng)能力、能夠防御最大攻擊量的解決方案脱吱。
BIG-IP的Delay Binding技術(shù)可以為部署在BIG-IP后面的服務(wù)器提供全面地SYN Flood保護智政。此時,BIG-IP設(shè)備作為安全代理來有效保護整個網(wǎng)絡(luò)箱蝠。
BIG-IP可以和其它安全設(shè)備配合续捂,構(gòu)建動態(tài)安全防御體系。BIG-IP可以根據(jù)用戶單位時間內(nèi)的連接數(shù)生成控制訪問列表宦搬,將該列表加載到其它安全設(shè)備上牙瓢,有效控制攻擊流量。
6.SSL加速
在每臺BIG-IP上间校,都具有SSL硬件加速芯片矾克,并且自帶100個TPS的License,用戶可以不通過單獨付費憔足,就可以擁有100個TPS的 SSL 加速功能胁附,節(jié)約了用戶的投資。在將來系統(tǒng)擴展時滓彰,可以簡單的通過License升級的方式控妻,獲得更高的SSL加速性能。
7.系統(tǒng)管理
BIG-IP提供HTTPS揭绑、SSH弓候、Telnet、SNMP等多種管理方式,用戶客戶端只需操作系統(tǒng)自帶的瀏覽器軟件即可菇存,不需安裝其它軟件彰居。可以通過支持命令行的SSH或支持瀏覽器管理的SSL方便撰筷、安全的進行遠(yuǎn)程管理。直觀易用的Web圖形用戶界面大服務(wù)降低了多歸屬基礎(chǔ)設(shè)施的實施成本和日常維護費用畦徘。
BIG-IP包含詳盡的實時報告和歷史紀(jì)錄報告毕籽,可供評測站點流量、相關(guān)ISP性能和預(yù)計帶寬計費周期井辆。管理員可以通過全面地報告功能充分掌握帶寬資源的利用狀況关筒。
另外,通過F5 的i-Control 開發(fā)包杯缺,目前國內(nèi)已有基于i-Control開發(fā)的網(wǎng)管軟件x-control, 可以定制針對系統(tǒng)服務(wù)特點的監(jiān)控系統(tǒng),比如服務(wù)的流量情況蒸播、各種服務(wù)連接數(shù)、訪問情況萍肆、節(jié)點的健康狀況等等袍榆,進行可視化顯示。
告警方式可以提供syslog塘揣、snmp trap包雀、mail等方式。
8.其它
內(nèi)存擴充能力:F5 BIG-IP 1000以上設(shè)備單機最大可擴充到2G內(nèi)存亲铡,此時可支持400萬并發(fā)回話才写。
升級能力:F5 所有設(shè)備均可通過軟件方式升級,在服務(wù)有效期內(nèi)奖蔓,升級軟件包由F5公司提供赞草。F5 NETWORKS已經(jīng)發(fā)布其系統(tǒng)的最新版本BIG-IP V9.0,主要有以下特性:虛擬 IPV4 / IPV6 應(yīng)用吆鹤、加速Web應(yīng)用高達(dá)3倍厨疙、減少66%甚至更多的基礎(chǔ)架構(gòu)成本、確保高優(yōu)先級應(yīng)用的性能檀头、確保更高級別的可用性轰异、大幅提高網(wǎng)絡(luò)和應(yīng)用安全性、強大的性能暑始,簡單的管理方式搭独、無以匹敵的自適應(yīng)能力和延展能力和突破的性能表現(xiàn)力。其強大的HTTP壓縮功能可以將用戶下載時間縮短50%廊镜,節(jié)省80%的帶寬牙肝。
IP地址過濾和帶寬控制:BIG-IP可以根據(jù)訪問控制列表對數(shù)據(jù)包進行過濾,并且針對某一關(guān)鍵應(yīng)用進行帶寬控制,確保關(guān)鍵應(yīng)用的穩(wěn)定運行配椭。
配置管理及系統(tǒng)報告:F5 BIG-IP提供WEB 界面配置方式和命令行方式進行配置管理虫溜,并在其中提供了豐富的系統(tǒng)報告,更可通過i-Control自行開發(fā)復(fù)雜的配置及報告生成股缸。