ADC的演進與挑選ADC的關鍵
從亞馬遜到Zillow以及所有其他你喜歡的網站,想想看在這些網站后面有多少臺web服務器在處理你的操作,幾十臺?幾百臺?
當然,好在你并不需要知道具體數(shù)量。
ADC肩負重任
為什么你不需要知道呢?因為應用交付控制器(ADC)會在你和web服務器之間來管理你和任何后端服務器之間的流量。簡而言之,ADC控制著web應用到你的交付,它也因此得名。
在應用交付控制器的發(fā)展初期,這些設備的處理需求非常大,以至大多數(shù)供應商都需要開發(fā)自定義ASIC來完成這項工作。這通常意味著高成本,對于較小型企業(yè)來說,這些設備太昂貴而負擔不起。然而,現(xiàn)在處理能力已經顯著提高,擁有先進功能的應用交付控制器可部署在軟件中,并可在符合成本效益的通用處理器上運行。這讓IT人員可部署現(xiàn)在的ADC作為單獨的硬件設備,還可非常有效地作為虛擬設備或托管服務來使用。進一步降低了部署成本,同時不會影響功能。
網絡交換機通常被稱為網絡或LAN交換機,但ADC不是這樣。事實上,這個名稱隨著功能的增加一直在演變,從負載均衡器,到4-7層網絡交換機,再到ADC。
ADC工作原理
在起初作為負載均衡器時,應用交付控制器只是做負載均衡的工作。該設備提供單個前端IP地址以讓用戶交互。事實上,ADC通常只處理入站請求,讓web服務器直接響應用戶以更有效地利用資源。
在后端,ADC使用多種算法來分配用戶到后端web服務器。后端交互最終包含負載均衡器和服務器之間的某種“heartbeat”消息,這讓負載均衡器確保它沒有將客戶信息發(fā)送到掛起或不響應或不可用的服務器。
多年來,ADC供應商利用外部客戶端和內部服務器之間設備的定位來提高安全性和性能。
ADC選購
鑒于ADC技術已經出現(xiàn)很久,你可以放心選購具有核心功能的ADC。事實上,即使是相對低端的ADC都有很多功能。更高端的ADC(針對具有巨大數(shù)據(jù)需求的運營商或數(shù)據(jù)中心)還提供額外的功能,例如IP聲譽、應用緩存以及聯(lián)合身份服務等。然而,由于ADC部署的每個功能都是專有功能,比較ADC產品并不容易。
雖然通過ADC傳輸?shù)牧髁?HTTP、FTP、DNS)都是標準化,但并沒有標準來確定處理流量的方式。所以,根據(jù)采購清單來選購ADC并不可行,重點是在決定購買前測試你所評估的ADC。幸運的是,大多數(shù)供應商現(xiàn)在都提供支持用于測試目的的虛擬設備。
ADC功能
下面讓我們來看看哪些功能ADC必須擁有以及哪些值得擁有。
應用和內部協(xié)議:你會想要確定ADC能夠支持企業(yè)特定的應用需求,雖然所有的都支持HTTP,但并非全都支持XML。
同時,你的企業(yè)可能計劃未來遷移到IPv6,所以要確保對IPv6的支持。
SSL卸載:理想情況下,后端服務器的資源應該用于提供應用服務,而不是網絡“家政服務”。解密和加密安全套接字層(SSL)會話可消耗大量資源。
很多ADC會讓你從單個服務器卸載SSL負擔到ADC。SSL(HTTPS)流量終止于服務器,而未加密HTTP流量發(fā)送到后端服務器。由于這在你的數(shù)據(jù)中心范圍內進行,通常沒有安全問題。后端服務器的CPU和其他資源現(xiàn)在可用于應用處理,而不是處理網絡安全任務。
HTTP緩存:同樣地,應用服務器可被調用來反復發(fā)送相同信息。無論是主頁還是最近的新聞文章,數(shù)百或數(shù)千用戶在短時間內請求相同的內容都很不尋常。
很多ADC足夠智能可識別對已請求過信息的額外請求,這些信息可進行緩存或保留在ADC,ADC可從其緩存發(fā)送數(shù)據(jù)而不是發(fā)送請求到目標服務器來響應客戶端。如果操作正確,這可對用戶快速響應,同時減少在后端服務器的負載。
應用監(jiān)控:雖然所有ADC無疑都會提供某種版本的應用監(jiān)控,但請一定要了解監(jiān)控的程度。高級監(jiān)控功能可幫助ADC更智能地平衡其負載。
可擴展性能:你不希望看到為了獲得更高性能,你需要更換整個設備。
幸運的是,很多供應商可通過簡單的許可證升級來處理性能升級。他們會在開始向你銷售可處理超過你需求的吞吐量的產品,并相應地對許可證進行定價。如果你需要更多吞吐量,你可升級你的許可證,而不需要更換或取代任何硬件。另外,如果你正在部署ADC作為虛擬設備或托管服務(這也可能是虛擬設備),你可能需要更多的ADC資源來滿足任何高峰需求或處理用戶流量的增長。
DDoS保護:分布式拒絕服務(DDoS)攻擊可通過向服務器發(fā)送大量假請求,讓服務器沒有足夠的資源來處理有效請求,而讓服務器崩潰。
這種相同的DDoS攻擊也可搞垮你的ADC,讓你整個服務器群無法使用。因此,你會希望確保你的ADC可抵御DDoS。
全局負載均衡:根據(jù)你的企業(yè)以及需求,全局功能可能是你必須擁有的功能。雖然這個功能變得相當復雜,其目的是允許你的后端服務器不僅包含與ADC在相同位置的服務器,還允許服務器位于WAN鏈接的其他位置。
虛擬設備:雖然不是必須具備的功能,但這是值得擁有的功能,因為你可以將ADC作為虛擬設備來運行。即使你不打算以這種方式部署ADC,使用虛擬設備用于測試目的可方便升級以及維護ADC,你可方便地嘗試新代碼,而不會影響你的ADC。
數(shù)據(jù)丟失防護:有些ADC現(xiàn)在提供數(shù)據(jù)丟失防護(DLP)功能,它們可檢查出站數(shù)據(jù),根據(jù)公司政策標記或阻止違反政策的出站數(shù)據(jù)。重要的是要記住,DLP可以是非常復雜的功能,它可能不是所有ADC都提供的功能。
總結
在過去,應用交付控制器沒有得到廣泛部署,但現(xiàn)在情況已經發(fā)生改變。如果你只有少數(shù)應用服務器(即使它們只服務內部客戶端),你都應該考慮部署應用交付控制器。入門級系統(tǒng)成本很低,而帶來的優(yōu)勢包括提高最終用戶響應時間以及系統(tǒng)可用性,ADC無疑是明智的基礎設施投資選擇。