如何搭建tomcat+apache+linux集群,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
公司主營業(yè)務(wù):網(wǎng)站設(shè)計制作、網(wǎng)站制作、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)公司推出棗莊免費(fèi)做網(wǎng)站回饋大家。
該集群為偽集群,實(shí)際應(yīng)用的時候tomcat應(yīng)該安裝在不同的機(jī)器上,而不是同一臺機(jī)器上
一.配置環(huán)境
操作系統(tǒng):rhel5
服務(wù)器IP:192.168.93.43
jdk版本:1.6.0_20
apache 版本:httpd-2.2.16.tar.gz
tomcat 版本:apache-tomcat-5.5.30.tar.gz
jk版本:tomcat-connectors-1.2.30-src.tar.gz
3個安裝包默認(rèn)放在了usr/local目錄下,用root用戶下載
共一臺機(jī)器,所以apache、jdk和2個tomcat都裝在一臺機(jī)器上了,一般情況是apache和jdk裝在一臺機(jī)器上,tomcat分別裝在各個機(jī)器或者裝同一臺機(jī)器上。
二.安裝
a) jdk安裝,略。
b) apache安裝
# cd /usr/local/
# mkdir apache
# tar xvfz httpd-2.2.16.tar.gz
# cd httpd-2.2.16
#./configure --prefix=/usr/local/apache --enable-modules=so --enable-so
配置安裝路徑信息等
# make
# make install
# cd /usr/local/apache/bin/
# ./apachectl configtest
若顯示Syntax ok則表明安裝成功,中間出現(xiàn)一些別的信息,如: httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.93.43 for ServerName 可以忽略;
#./apachectl start
啟動apache服務(wù),瀏覽器中輸入127.0.0.1看是否有it works
# ./apachectl stop
關(guān)閉服務(wù)
注:系統(tǒng)可能自帶安裝了Apache,如果不需要,可以先將自帶的卸載掉后再安裝,否則可能出現(xiàn)直接訪問系統(tǒng)自帶的Apache。
c) tomcat安裝
# cd /usr/local/
# tar xvfz apache-tomcat-5.5.30.tar.gz
# mv apache-tomcat-5.5.30 /usr/local/tomcat 修改解壓后的文件夾名字
# /usr/local/tomcat/bin/startup.sh
啟動服務(wù)后,訪問本機(jī)8080端口
# /usr/local/tomcat/bin/startup.sh /startup.bat
關(guān)閉服務(wù)
# /usr/local/tomcat/bin/shutdown.sh
# tail -f logs/catalina.out 查看tomcat的控制臺輸出
如果碰到tomcat關(guān)不完全等情況,執(zhí)行如下操作
#ps -ef |grep tomcat 查看tomcat進(jìn)程
#kill -9 pid 如果有,用kill;pid為進(jìn)程號
d) jk安裝
#cd /usr/local/
# tar xzvf tomcat-connectors-1.2.30-src.tar.gz
#cd tomcat-connectors-1.2.30-src/jk/native
#chmod 755 buildconf.sh
#./buildconf.sh
#./configure --with-apxs=/usr/local/apache/bin/apxs
#make
#make install
我安裝好了之后,發(fā)現(xiàn)/usr/local/apache/modules/下已經(jīng)有mod_jk.so了
注意先查看下,如果沒有則執(zhí)行下面的步驟
#cd /usr/local/ jakarta-tomcat-connectors- jk1.2.14-src/jk/native/apache-2.0/
#cp mod_jk.so /usr/local/apache/modules/
三.配置
a) httpd.conf配置
#vi /usr/local/apache/conf/httpd.conf
在文件的最尾部加上如下語句
# Load mod_jk
LoadModule jk_module modules/mod_jk.so
# Configure mod_jk
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
轉(zhuǎn)發(fā)過濾,將符合以下條件的請求發(fā)送到負(fù)載平衡器
JkMount /*.jsp loadbalancer
JkMount /servlet/* loadbalancer
JkMount /application/* loadbalancer
b) workers.properties 添加
#vi /usr/local/apache/conf/workers.properties 如果workers.properties不存在就表示新建該文件
內(nèi)容如下:
worker.list=loadbalancer
worker.worker1.port=8009 worker1所在的端口
worker.worker1.host=192.168.93.43 worker1所在的IP
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
worker.worker2.port=9009 worker2所在的端口
worker.worker2.host=192.168.93.43 worker2所在的IP
worker.worker2.type=ajp13
worker.worker2.lbfactor=1 #權(quán)量 數(shù)值越大,分配的機(jī)率就最小
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=worker1,worker2
worker.loadbalancer.local_worker_only=1
worker.loadbalancer.sticky_session=true
此處指定集群是否需要會話復(fù)制,如果設(shè)為true,則表明為會話粘性,不進(jìn)行會話復(fù)制,當(dāng)某用戶的請求第一次分發(fā)到哪臺Tomcat后,后繼的請求會一直分發(fā)到此Tomcat服務(wù)器上處理;如果設(shè)為false,則表明需求會話復(fù)制。
worker.loadbalancer.sticky_session_force=true
如果上面的sticky_session設(shè)為true時,建議此處也設(shè)為true,此參數(shù)表明如果集群中某臺Tomcat服務(wù)器在多次請求沒有響 應(yīng)后,是否將當(dāng)前的請求,轉(zhuǎn)發(fā)到其它Tomcat服務(wù)器上處理;此參數(shù)在sticky_session=true時,影響比較大,會導(dǎo)致轉(zhuǎn)發(fā)到其它 Tomcat服務(wù)器上的請求,找不到原來的session,所以如果此時請求中有讀取session中某些信息的話,就會導(dǎo)致應(yīng)用的null異常。
c) server.xml配置
修改第一個tomcat的server.xml文件,修改過后的配置如下
將Cluster標(biāo)簽對的注釋去掉修改里面的
tcpListenAddress=”192.168.93.43”
其中第一個tomcat的端口為:8005、8080、8009
修改第二個tomcat的server.xml文件,修改過后的配置如下
將Cluster標(biāo)簽對的注釋去掉修改里面的
tcpListenAddress=”192.168.93.43”
其中第二個tomcat的端口為:9005、9080、9009
保存后重啟tomcat檢查是否正常
關(guān)于如何搭建tomcat+apache+linux集群問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。