tomcat6apache2ajp負(fù)載均衡加集群_第1頁
tomcat6apache2ajp負(fù)載均衡加集群_第2頁
tomcat6apache2ajp負(fù)載均衡加集群_第3頁
tomcat6apache2ajp負(fù)載均衡加集群_第4頁
tomcat6apache2ajp負(fù)載均衡加集群_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余5頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、tomcat6_apache2.2_ajp 負(fù)載均衡加集群實(shí)戰(zhàn)環(huán)境:一臺(tái) apache2.2 服務(wù)器,三臺(tái) tomcat 服務(wù)器:apache2.2 服務(wù)器1.ip:02.只裝 apache 軟彳:httpd-2.2.6.tar.bz2安裝路徑:/usr/local/apache2tomcat 服務(wù)器:均配置相同的應(yīng)用。1 .集群名:balancer:/tomcatcluster2 .三臺(tái)集群服務(wù)器 ip:IP_1:1IP_2:2IP_3:33 .測試應(yīng)用程序 test 文件夾放在 tomcat6 的 we

2、bapps 目錄下操作系統(tǒng)均為:centos4.5_x86jre:1.6:jdk-6u1-linux-i586-rpm.bintomcat6.0:編譯好的二進(jìn)制軟件包 apache-tomcat-6.0.13.tar.gztomcat6.0 安裝路徑:/usr/local/tomcat6oralce 的 jdbc:class12.jar軟件包存放的路徑:/home/xiutuo/software/java 安裝路徑:/usr/java/jdk1.6.0_01 使用普通用戶:xiutuo 來啟動(dòng) tomcat6tomcat6 開機(jī)自動(dòng)啟動(dòng)腳本:/etc/init.d/tomcat下載路徑:htt

3、p:/ .apache 對 tomcat 集群支持有倆種方式:a.通過 apache2.1 之后版本后內(nèi)置的 proxy_ajp。b.對于 apache2.1 之版本則通過 tomcat 的 jk2.0.4 的 mod_jk2.so:(該版本已經(jīng)停止開發(fā))將解壓縮后的目錄中的 modules 目錄中的 mod_jk2.so 文件復(fù)制到 apache 的安裝目錄下的modules 目錄中。倆種方式比較:proxy_ajp 配置較簡單,主要表現(xiàn)在 proxy_ajp 目前只支持配置到目錄,還不支持對文件名稱的 pattern 模式匹配(即還不能定義到只對 jsp 文件起作用)。而 jk2 則可配置

4、性強(qiáng),但已經(jīng)停止開發(fā)*官方對 ajp 和 jk2 說明:JK2hasbeenputinmaintainermodeandnofurtherdevelopmentwilltakeplace.ThereasonforshuttingdownJK2developmentwasthelackofdevelopersinterest.OtherreasonwaslackofusersinterestinadoptingJK2,causedbyconfigurationcomplexitywhencomparedtoJK.ThelatestofficialJK2releaseis2.0.4.JK2will

5、haveitssuccessorwithincoreApache2.1/2.2distribution.Wehavedevelopednewproxy_ajpthatisanadditiontothemod_proxyandusesTomcatsAJPprotocolstack.Itisdeveloppedinhttpd-2.1andintegratedinit.Wehavealsodevelopedanewproxy_balancermoduleforloadbalancinghttpandajpprotocolstacks.JKwillbefullysupportedforallother

6、webservers.ThenextJKreleaseisplannedfortheendofNovember.LotsofcodefromJK2hasbeenportedtoJK2 .tomcat 集群方式:a.DeltaManager-現(xiàn)在采用的該方式:內(nèi)部機(jī)器集群少采用b.BackupManager*兩種集群方式官方說明:usingtheDeltaManagertoreplicatesessiondeltas.Byall-to-allwemeanthatthesessiongetsreplicatedtoalltheothernodesinthecluster.Thisworksgrea

7、tforsmallerclusterbutwedontrecommenditforlargerclusters(alotoftomcatnodes).Alsowhenusingthedeltamanageritwillreplicatetoallnodes,evennodesthatdonthavetheapplicationdeployed.Togetaroundthisproblem,youllwanttousetheBackupManager.Thismanageronlyreplicatesthesessiondatatoonebackupnode,andonlytonodesthat

8、havetheapplicationdeployed.DownsideoftheBackupManager:notquiteasbattletestedasthedeltamanager.3 .負(fù)載均衡(load-balance)定義:在服務(wù)器端短時(shí)間內(nèi)獲得大量的請求,單一服務(wù)器無法在一個(gè)較短的時(shí)間內(nèi)響應(yīng)這些請求此時(shí)服務(wù)器需要一個(gè)機(jī)制,請求按照多個(gè)服務(wù)器不同的負(fù)載能力,把這些請求合理的分配。4 .集群(cluster):在多個(gè)服務(wù)器之間共享用戶信息,資源等。tomcat6_apache2.2 負(fù)載均衡加集群:高可用性至高體現(xiàn)?,F(xiàn)在的帶集群功能相關(guān)軟件 oracle10g,mysql5,tomc

9、at 等。二:軟件安裝1.apache 服務(wù)器安裝:這里主要介紹 apache2 的源碼安裝-cd/home/xiutuo/software/-tar-zvxfhttpd-2.2.6.tar.gz-cdhttpd-2.2.6-mkdir-p/usr/local/apache2-./configure- -prefix=/usr/local/apache2- -enable-modules=so- -enable-mods-shared=all- -enable-proxy- -enable-proxy-connect- -enable-proxy-ftp- -enable-proxy-http

10、- -enable-proxy-ajp- -enable-proxy-balancer注釋:這里測試用,編譯了所有可用模塊,并激活了 tomcat 集群需要的enable-proxy,enable-proxy-http,enable-proxy-connect,enable-proxy-ajp 和 enable-proxy-balancer,其中 proxy-ajp 和 proxy-balancer 必須依賴 proxy,如果是自定義的編譯除了以上幾個(gè)必須的模塊外,mod_status 也要編譯進(jìn)去,切記。enable-proxy-ftp 可以不編譯。-make-makeinstall2.三臺(tái)

11、 tomcat 服務(wù)器安裝主要介紹 jdk1.6u1 和 tomcat6 的安裝,三臺(tái)機(jī)器重復(fù)此工作就可以了,當(dāng)然記得 ip 一定要設(shè)置正確。jdk1.6 安裝a.卸載系統(tǒng)自帶 jdk# rpm-ej2sdk-1.4.1-fcsb.安裝新 jdk# cd/home/xiutuo/software進(jìn)入軟件包存放目錄# chmoda+xjdk-6u1-linux-i586-rpm.bin使它有執(zhí)行權(quán)限# .Zjdk-6u1-linux-i586-rpm.bin多敲幾個(gè)空格,然后看到y(tǒng)es的時(shí)候輸入 yes,回車然后在當(dāng)前目錄下就生成了 jdk-6u1-linux-i586-rpm# rpm-ivh

12、jdk-6u1-linux-i586-rpmc.設(shè)置環(huán)境變量僅設(shè)置某個(gè)用戶而不是所有用戶可以修改/.cshrc,/.bash_pro 巾 le 文件,追加下面一段,如果為所有用戶以及以后添加的用戶都加上環(huán)境變量的話追加/etc/profie 文件.*主意不要在 profile-/.cshrcM/.bash_profile 中重復(fù)追加*這里:# vi/etc/profile/java/如果你安裝的 j2sdk 的路徑不一樣,請自行修改JAVA_HOME=/usr/java/jdk1.6.0_01exportJAVA_HOMECLASSPATH=/usr/java/jdk1.6.0_01/lib:

13、/usr/java/jdk1.6.0_01/jre/libexportCLASSPATHPATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/binexportPATHJRE=/usr/java/jdk1.6.0_01/jreexportJREd:立即生效/如果你修改的是/etc/profile# source/etc/profile/如果你修改的是/.cshrc# source-/.cshrc/如果你修改的是/.bash_profile# source-/.bash_profilee:測試成功否# java-versionJava(TM)SERuntimeEnvi

14、ronment(build1.6.0_01-b06)JavaHotSpot(TM)ClientVM(build1.6.0_01-b06,mixedmode,sharing)看到這個(gè)消息,就 ok 啦 tomcat6安裝tomcat6 更詳細(xì)的安裝請看 blog 上 tomcat 文章 a.安裝 tomcat,# cd/home/xiutuo/software/進(jìn)入軟件包存放目錄# tar-zvxfapache-tomcat-6.0.13.tar.gz解壓# mvapache-tomcat-6.0.13/usr/local/tomcat6/安裝# cd/usr/local/tomcat6/bin

15、/進(jìn)入安裝目錄# tar-zvxfjsvc.tar.gz解壓# cdjsvc-src/進(jìn)入 jsvc-src 目錄# autoconf# ./configure-with-java=/usr/java/jdk1.6.0_01# configure 時(shí)切記加 java 的 jdk 路徑,否則無法使用普通用戶開機(jī)自動(dòng)啟動(dòng) tomcat# make編譯生成 jsvc 文件# cpjsvc./拷貝 jsvc 到上級目錄回到上級目錄# cd/usr/local/tomcat6/運(yùn)行下面的命令可以使 tomcat 以 daemon 方式運(yùn)行# ./bin/jsvc-cp./bin/bootstrap.ja

16、r-outfile./logs/catalina.out-errfile./logs/catalina.errorg.apache.catalina.startup.Bootstrapb.配置 oralce 的 jdbc/拷貝 oracle 的 jdbc 至 U/usr/local/tomcat6/lib 目錄下# cp/home/software/class12.jar./lib/c.配置 tomcat 用戶# cd/usr/local/tomcat6/conf# vitomcat-users.xml內(nèi)容如下:請修改 tomcat 里所有定義用戶的密碼:即修改 password 為自己想要的

17、值。d.把應(yīng)用程序文件夾 test 放到 webapps 下3.tomcat 負(fù)載均衡和集群配置參考官方配置文檔:#cd./tomcat-6.0-doc/cluster-howto.html/tomcat-6.0-doc/balancer-howto.htmla.tomcat6 配置文件 server.xml 和應(yīng)用程序的 web.xml*開放負(fù)載均衡,默認(rèn)使用 ajp 協(xié)議時(shí)使用 8009 端口(使用 http 協(xié)議時(shí)為 8080 端口)*修改 tomcat 的 conf/server.xml 的(使

18、用 ajp 協(xié)議時(shí)配置)把!-YoushouldsetjvmRoutetosupportload-balancingviaAJPie:-改成!-說明:第一臺(tái) tomcat 就把 jvmRoute=tomcat1第二臺(tái) tomcat 就把 jvmRoute=tomcat2第三臺(tái) tomcat 就把 jvmRoute=tomcat3*開放集群*修改 tomcat 的 conf/server.xml(使用 ajp 協(xié)議時(shí)配置)在后面或者后面簡單的加上也可以加上更詳細(xì)參數(shù)的集群配置內(nèi)容(這是官方默認(rèn),請自行修改相關(guān)參數(shù))MembershipclassName=org.apache.catalina.t

19、ribes.membership.McastServiceaddress=port=45564”frequency=500dropTime=3000/*配置應(yīng)用的 web.xml*在每個(gè) webapps 應(yīng)用中,修改配置文件 web.xml 文件添加元素distributable/在 web.xml 文件中元素下增加以下內(nèi)容:具體修改如下:修改前:修改后:4.配置 apache 的 ajp 負(fù)載均衡功能,這里請務(wù)必啟用反向代理。*至于其中的原理請參考官方文檔說明。正向代理的典型用途是為在防火墻內(nèi)的局域網(wǎng)客戶端提供訪問 Internet 的途徑。正向代理還可以使用緩沖特性(由

20、mod_cache 提供)減少網(wǎng)絡(luò)使用率。反向代理的典型用途是將防火墻后面的服務(wù)器提供給 Internet 用戶訪問。反向代理還可以為后端的多臺(tái)服務(wù)器提供負(fù)載平衡,或?yàn)楹蠖溯^慢的服務(wù)器提供緩沖服務(wù)。另外,還可以啟用高級 URL 策略和管理技術(shù),從而使處于不同 web 服務(wù)器系統(tǒng)的 web 頁面同時(shí)存在于同一個(gè) URL 空間下。*參考文檔:tomcat6 官方文檔/tomcat-6.0-doc/balancer-howto.htmlapache 中文版本http:/ apache*修改/usr/local/apache2/conf/httpd.con

21、f 文件確保將以下 Module 的注釋去掉LoadModuleproxy_modulemodules/mod_proxy.soLoadModuleproxy_connect_modulemodules/mod_proxy_connect.soLoadModuleproxy_ftp_modulemodules/mod_proxy_ftp.soLoadModuleproxy_http_modulemodules/mod_proxy_http.soLoadModuleproxy_ajp_modulemodules/mod_proxy_ajp.soLoadModuleproxy_balancer_m

22、odulemodules/mod_proxy_balancer.soLoadModulestatus_modulemodules/mod_status.so并在最后面,增加SetHandlerserver-statusOrderDeny,AllowDenyfromallAllowfromall/LocationSetHandlerbalancer-managerOrderDeny,AllowDenyfromallAllowfromallProxyRequestsOffProxyPass/testbalancer:/tomcatcluster/stickysession=jsessionidnofailover=OnBalancerMemberajp:/0:8009loadfactor=1BalancerMemberajp:/1:8009loadfactor=2BalancerMemberajp:/2:8009loadfactor=3注釋:ProxyRequestsOff 表示啟用反向代理。ProxyPass 為代理轉(zhuǎn)發(fā)的 Url,即將所有訪問/的請求轉(zhuǎn)發(fā)到群集balancer:/tomcatcluster,這里為/test即將所有訪問/的請求轉(zhuǎn)發(fā)到群集balancer:/tomcatc

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論