資源描述:
《linux下配置tomcat集群的負(fù)載均衡》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、linux下配置tomcat集群的負(fù)載均衡一、首先了解下與集群相關(guān)的幾個(gè)概念集群:集群是一組協(xié)同工作的服務(wù)實(shí)體,用以提供比單一服務(wù)實(shí)體更具擴(kuò)展性與可用性的服務(wù)平臺(tái)。在客戶端看來(lái),一個(gè)集群就象是一個(gè)服務(wù)實(shí)體,但事實(shí)上集群由一組服務(wù)實(shí)體組成。與單一服務(wù)實(shí)體相比較,集群提供了以下兩個(gè)關(guān)鍵特性:·??可擴(kuò)展性--集群的性能不限于單一的服務(wù)實(shí)體,新的服務(wù)實(shí)體可以動(dòng)態(tài)地加入到集群,從而增強(qiáng)集群的性能。·??高可用性--集群通過(guò)服務(wù)實(shí)體冗余使客戶端免于輕易遇到outofservice的警告。在集群中,同樣的服務(wù)可以由多個(gè)服務(wù)實(shí)體
2、提供。如果一個(gè)服務(wù)實(shí)體失敗了,另一個(gè)服務(wù)實(shí)體會(huì)接管失敗的服務(wù)實(shí)體。集群提供的從一個(gè)出錯(cuò)的服務(wù)實(shí)體恢復(fù)到另一個(gè)服務(wù)實(shí)體的功能增強(qiáng)了應(yīng)用的可用性。為了具有可擴(kuò)展性和高可用性特點(diǎn),集群的必須具備以下兩大能力:·??負(fù)載均衡--負(fù)載均衡能把任務(wù)比較均衡地分布到集群環(huán)境下的計(jì)算和網(wǎng)絡(luò)資源。·??錯(cuò)誤恢復(fù)--由于某種原因,執(zhí)行某個(gè)任務(wù)的資源出現(xiàn)故障,另一服務(wù)實(shí)體中執(zhí)行同一任務(wù)的資源接著完成任務(wù)。這種由于一個(gè)實(shí)體中的資源不能工作,另一個(gè)實(shí)體中的資源透明的繼續(xù)完成任務(wù)的過(guò)程叫錯(cuò)誤恢復(fù)。負(fù)載均衡和錯(cuò)誤恢復(fù)都要求各服務(wù)實(shí)體中有執(zhí)行同一
3、任務(wù)的資源存在,而且對(duì)于同一任務(wù)的各個(gè)資源來(lái)說(shuō),執(zhí)行任務(wù)所需的信息視圖(信息上下文)必須是一樣的。??集群分類:Linux集群主要分成三大類(高可用集群,負(fù)載均衡集群,科學(xué)計(jì)算集群)高可用集群(HighAvailabilityCluster)常見(jiàn)的就是2個(gè)節(jié)點(diǎn)做成的HA集群,有很多通俗的不科學(xué)的名稱,比如"雙機(jī)熱備","雙機(jī)互備","雙機(jī)".高可用集群解決的是保障用戶的應(yīng)用程序持續(xù)對(duì)外提供服務(wù)的能力。(請(qǐng)注意高可用集群既不是用來(lái)保護(hù)業(yè)務(wù)數(shù)據(jù)的,保護(hù)的是用戶的業(yè)務(wù)程序?qū)ν獠婚g斷提供服務(wù),把因軟件/硬件/人為造成的故障
4、對(duì)業(yè)務(wù)的影響降低到最小程度)。負(fù)載均衡集群(LoadBalanceCluster)??負(fù)載均衡系統(tǒng):集群中所有的節(jié)點(diǎn)都處于活動(dòng)狀態(tài),它們分?jǐn)傁到y(tǒng)的工作負(fù)載。一般Web服務(wù)器集群、數(shù)據(jù)庫(kù)集群和應(yīng)用服務(wù)器集群都屬于這種類型。??負(fù)載均衡集群一般用于相應(yīng)網(wǎng)絡(luò)請(qǐng)求的網(wǎng)頁(yè)服務(wù)器,數(shù)據(jù)庫(kù)服務(wù)器。這種集群可以在接到請(qǐng)求時(shí),檢查接受請(qǐng)求較少,不繁忙的服務(wù)器,并把請(qǐng)求轉(zhuǎn)到這些服務(wù)器上。從檢查其他服務(wù)器狀態(tài)這一點(diǎn)上看,負(fù)載均衡和容錯(cuò)集群很接近,不同之處是數(shù)量上更多??茖W(xué)計(jì)算集群(HighPerformanceComputingClus
5、ter)??高性能計(jì)算(HighPerfermanceComputing)集群,簡(jiǎn)稱HPC集群。這類集群致力于提供單個(gè)計(jì)算機(jī)所不能提供的強(qiáng)大的計(jì)算能力。負(fù)載均衡與雙機(jī)熱備的區(qū)別??負(fù)載均衡是在這多臺(tái)服務(wù)器之上增加了一臺(tái)負(fù)載均衡服務(wù)器,負(fù)載均衡服務(wù)器的作用是把用戶的請(qǐng)求平均分配到每個(gè)節(jié)點(diǎn);增加集群整體的處理能力;實(shí)現(xiàn)網(wǎng)絡(luò)訪問(wèn)的均衡。??雙機(jī)熱備相當(dāng)于2臺(tái)服務(wù)器其中有一臺(tái)是另一臺(tái)的備機(jī),也可以互為備機(jī);主機(jī)在運(yùn)行服務(wù)時(shí),備機(jī)處于檢測(cè)狀態(tài),主機(jī)發(fā)生故障后,備機(jī)將接管主機(jī)的服務(wù)。??負(fù)載均衡是解決服務(wù)器壓力過(guò)大,網(wǎng)絡(luò)請(qǐng)求大
6、量并發(fā)而設(shè)計(jì)的產(chǎn)品;負(fù)載均衡的優(yōu)點(diǎn):WEB訪問(wèn)流暢,用戶請(qǐng)求平均分布在每個(gè)節(jié)點(diǎn)上。??雙機(jī)熱備是為保障24*7小時(shí)高可用不停機(jī)而推出的產(chǎn)品;雙機(jī)熱備的優(yōu)點(diǎn)是:能保障用戶服務(wù)不間斷。??負(fù)載均衡的缺點(diǎn):適用靜態(tài)WEB,如果是數(shù)據(jù)庫(kù)將不起作用,數(shù)據(jù)庫(kù)的多向同步目前還沒(méi)有完全解決的方案。??雙機(jī)熱備缺點(diǎn):用傳統(tǒng)加加陣列的方式增加了存儲(chǔ)空間,同樣也形成了單點(diǎn)故障;有可能雙機(jī)熱備成為虛設(shè),因?yàn)橐坏╆嚵斜罎?,服?wù)也意味這停止。Tomcat集群的三種負(fù)載均衡方式優(yōu)缺點(diǎn)對(duì)照1.使用DNS輪詢.2.使用ApacheR-proxy方式
7、。3.使用Apachemod_jk方式.DNS輪詢的缺點(diǎn)是,當(dāng)集群中某臺(tái)服務(wù)器停止之后,用戶由于dns緩存的緣故,便無(wú)法訪問(wèn)服務(wù),必須等到dns解析更新,或者這臺(tái)服務(wù)器重新啟動(dòng)。還有就是必須把集群中的所有服務(wù)端口暴露給外界,沒(méi)有用apache做前置代理的方式安全,并且占用大量公網(wǎng)IP地址,而且tomcat還要負(fù)責(zé)處理靜態(tài)網(wǎng)頁(yè)資源,影響效率。優(yōu)點(diǎn)是集群配置最簡(jiǎn)單,dns設(shè)置也非常簡(jiǎn)單。R-proxy的缺點(diǎn)是,當(dāng)其中一臺(tái)tomcat停止運(yùn)行的時(shí)候,apache仍然會(huì)轉(zhuǎn)發(fā)請(qǐng)求過(guò)去,導(dǎo)致502網(wǎng)關(guān)錯(cuò)誤。但是只要服務(wù)器再啟動(dòng)
8、就不存在這個(gè)問(wèn)題。mod_jk方式的優(yōu)點(diǎn)是,Apache會(huì)自動(dòng)檢測(cè)到停止掉的tomcat,然后不再發(fā)請(qǐng)求過(guò)去。缺點(diǎn)就是,當(dāng)停止掉的tomcat服務(wù)器再次啟動(dòng)的時(shí)候,Apache檢測(cè)不到,仍然不會(huì)轉(zhuǎn)發(fā)請(qǐng)求過(guò)去。R-proxy和mod_jk的共同優(yōu)點(diǎn)是.可以只將Apache置于公網(wǎng),節(jié)省公網(wǎng)IP地址資源??梢酝ㄟ^(guò)設(shè)置來(lái)實(shí)現(xiàn)Apache專門負(fù)責(zé)處理靜態(tài)網(wǎng)頁(yè),讓To