APACHE-TOMCAT集群环境部署
APACHE-TOMCAT集群環境部署
—————————————————–Shanks
———————————————————————————————————————-
本集群不涉及session同步,但是會記錄session會話。
1.1 OS:linux RedHat5u51.2 Soft:
httpd-2.2.17.tar.gz下載地址:http://httpd.apache.org/download.cgi
apache-tomcat-5.5.17.tar.gz下載地址:http://tomcat.apache.org/download-60.cgi
jdk1.6.0_22下載地址:http://java.sun.com/javase/downloads/previous.jsp
tomcat-connectors-1.2.31-src.tar.gz http://tomcat.apache.org/download-connectors.cgi
1.2.1 soft說明
apache:沒啥說的,提供web jdk:java環境
tomcat:java容器 jk:調度器
1.3 安裝部署步驟1.3.1 部署前準備
由于我在部署前發現在/usr/local/下跑著一個tomcat,所以只得新建個用戶wangpo,在wangpo家目錄下安裝配置。這塊需要注意的就是一個權限。部署結束時wangpo~目錄下有4個目錄:apache_test src tomcat_test1 tomcat_test2,apache_test是apache的主目錄,在這個目錄中,htdocs也就是web-root目錄的權限要是wangpo.wangpo的,其他的目錄權限可以是root的,并且我將apache的運行用戶和用戶組都改成了wangpo;tomcat_test1和tomcat_test2是tomcat主目錄,這兩個目錄的所屬者、組都是wangpo。到此,前期準備結束。
1.3.2 Jdk
其實由于之前已經有過java環境,所以不需要再次部署,不過我還是寫上步驟
#chmod 755 jdk-1_5_0_16-linux-i586.bin
#./jdk-1_5_0_16-linux-i586.bin
# mv jdk-1_5_0_16 /usr/local/
到此JDK已經安裝完成
到/usr/bin目錄下,把原用的java,javac文件刪除:
最好先備份
rm -rf java
rm -rf javac
在/usr/bin 下建立 軟連接 java
ln -s /usr/local/jdk-1_5_0_16/bin/java /usr/bin/java
ln -s /usr/local/jdk-1_5_0_16/bin/javac /usr/bin/javac
測試下,shell>java;javac
為了方便下在的工作建立兩個軟鏈接:
ln -s /usr/local/jdk-1_5_0_16 /usr/local/jdk
ln -s /usr/local/jdk-1_5_0_16/jre /usr/local/jre
設置環境變量
JAVA_HOME=/usr/local/jdk
export JAVA_HOME
JRE_HOME=/usr/local/jre
export JRE_HOME
CLASSPATH=/usr=/usr/local/tomcat/common/lib/:/usr/local/jdk/lib:/usr/local/jre/lib
export CLASSPATH
PATH=$PATH:/home/wangpo/tomcat_test1/bin/:/home/wangpo/tomcat_test2/bin/:/home/wangpo/apache_test/bin:/usr/local/jdk/bin:/usr/local/jre/bin
export PATH
1.3.3 Apache
安裝
我的apache開的是81端口,測試嘛,無所謂,不過在生產環境中最好改成大號,要不老是root啟動,op得煩死。
tar zxf httpd-2.2.17.tar.gz && cd http -2.2.17
./configure –prefix=/usr/local/apache2 –enable-mods-shared=all –enable-cgi –enable-rewrite –with-mpm=worker –enable-module=most –enable-proxy –enable-proxy-ajp –enable-forward –enable-proxy-connect –enable-proxy-http –enable-so –enable-deflate –enable-headers –enable-include
上面的如果不行,執行這個
./configure –prefix=/usr/local/apache2 –enable-module=most –enable-proxy –enable-rewrite –with-mpm=worker –enable-proxy-ajp –enable-forward –enable-proxy-connect –enable-proxy-http –enable-so –enable-deflate –enable-headers –enable-include
# ./configure –prefix=/usr/local/apache2 –enable-so (備份原始記錄)
#./configure –prefix=/usr/local/apache2 –enable-so –enable-ssl –enable-rewrite –with-ssl=/usr/local/ssl –enable-ssl=shared (安裝 open ssl 用到的安裝方法) (按這個要求安裝)
#./configure –prefix=/usr/local/apache2 –enable-rewrite –with-ssl=/usr/local/ssl –enable-ssl=shared (CA 的要求)
配置
Cd /home/wangpo/apache_test/conf
Vim http.conf
—————————————————————————————————————
LoadModule jk_module modules/mod_jk.so #調用jk模塊
<VirtualHost 172.22.1.82:81> #建個虛擬主機
DocumentRoot /home/wangpo/apache_test/htdocs
Errorlog ”/home/wangpo/apache_test/logs/tom_test_error.log”
JkMount /*.jsp controller #去找controller調度器
JkMount /*.txt controller
</VirtualHost>
JkWorkersFile conf/workers.properties #調度文件的位置
JkRequestLogFormat “%w %V %T %r”
JkLogFile “/home/wangpo/apache_test/logs/mod_jk.log”
JkLogLevel error
JkOptions +ForwardURICompatUnparsed
Vim workers.properties
worker.list=controller
#========worker1========
worker.worker1.port=8010
worker.worker1.host=172.22.1.82
worker.worker1.type=ajp13
worker.worker1.lbfactor = 1
#========worker2========
worker.worker2.port=8011 #tomcat端AJP監聽的端口
worker.worker2.host=172.22.1.82 #主機名也行
worker.worker2.type=ajp13 #用AJP-13協議
worker.worker2.lbfactor = 1 #權重
#========controller,負載均衡控制器========
worker.controller.type=lb #調度算法
worker.controller.balance_workers=worker1,worker2 #這里的worker1只要與此文件里的一致就行,不用在tomcat上做任何調整
worker.controller.sticky_session=1 #開啟會話記錄,同一session找同一個tomcat,true和1都行
1.3.4 Jk
tar zxf tomcat-connectors-1.2.31-src.tar.gz&&cd tomcat-connectors-1.2.31-src/native
./buildconf.sh
./configure –with-apxs=/home/wangpo/apache_test/bin/apxs&&make && make install
之后就會在/home/wangpo/apache_test/modules下生成mod_jk.so
1.3.5 Tomcat
tar zxf apache-tomcat-5.5.17.tar.gz
mv apache-tomcat-5.5.17 /home/wangpo/tomcat_test1
cp /home/wangpo/tomcat_test1 /home/wangpo/tomcat_test2
—————————————————————————————————————-
vim /home/wangpo/tomcat_test1/conf/server.xml
<Server port=”8006″ shutdown=”SHUTDOWN”> #把8005改成8006
<Connector port=”8081″ maxHttpHeaderSize=”8192″ #把8080改成8081
<!– Define an AJP 1.3 Connector on port 8009 –> #把8009改成8010
<Connector port=”8010″
—————————————————————————————————————
vim /home/wangpo/tomcat_test2/conf/server.xml
<Server port=”8007″ shutdown=”SHUTDOWN”> #把8005改成8007
<Connector port=”8082″ maxHttpHeaderSize=”8192″ #把8080改成8082
<!– Define an AJP 1.3 Connector on port 8009 –> #把8009改成8011
<Connector port=”8011″
如果需要session記錄則需要改jvm標識,要與apache中jk調度文件內的記錄一致
<Engine name=”Catalina” defaultHost=”localhost” jvmRoute=”worker1″>
不需要的話那就算了,就不用調整了。。。
1.4 啟動服務
Cd /home/wangpo/apache_test/bin&&./apachectl start 之后檢查81端口
Cd /home/wangpo/tomcat_test1/bin&&./startup.sh 檢查8006、8081、8010
Cd /home/wangpo/tomcat_test2/bin&&./startup.sh 檢查8007、8082、8011
1.5 負載均衡的測試
Apache
——————————————————————————————————————-
Cd /home/wangpo/apache_test/htdocs&&vim index.html
<html><body><h1>It a test for tomcat!</h1></body></html>
<p><a href=”http://lalalalalal:81/tom_test/test.jsp”>tomcat_test</a></p>
——————————————————————————————————————-
Tomcat-1
Cd /home/wangpo/tomcat_test1/webapps&&mkdir tom_test && chown –R wangpo.wangpo tom_test && cd tom_test &&vim test,jsp
<HTML>
<HEAD>
<TITLE>JSP測試頁面</TITLE>
</HEAD>
<%out.println(“<h1>Hello World! tom111111111111111111111111</h1>”);%>
</HTML>
——————————————————————————————————————
Tomcat-2
Cd /home/wangpo/tomcat_test2/webapps&&mkdir tom_test && chown –R wangpo.wangpo tom_test && cd tom_test &&vim test,jsp
<HTML>
<HEAD>
<TITLE>JSP測試頁面</TITLE>
</HEAD>
<%out.println(“<h1>Hello World! Tom22222222222222</h1>”);%>
</HTML>
之后訪問
http://lalalalalal:81 —à訪問apache的index.html
或者直接訪問jsp頁面
http://lalalalalal:81/tom_test/test.jsp 如果刷新后111111和22222交替出現就ok了
不過如果當前環境下開啟了session記錄的話,在同一session下看到的只會是一個頁面。
轉載于:https://blog.51cto.com/shanks/1307641
總結
以上是生活随笔為你收集整理的APACHE-TOMCAT集群环境部署的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何将文件复制到虚拟机中
- 下一篇: 网吧琐想