一 安装准备
本次需要安装apache+tomcat集群 来实现负载均衡和集群间session的复制。
本次准备了3台机器,一台安装apache作为前端访问,两台安装tomcat做集群负载均衡
apache 192.168.10.1 apache版本为2.2.20
tomcatA 192.168.10.10 tomcat都是tomcat6
tomcatB 192.168.10.11
二.apache的配置
1. 安装apache的模块mod_jk 来支持与tomcat互动
下载地址 http://archive.apache.org/dist/jakarta/tomcat-connectors/jk/source/jk-1.2.15/
选最新的版本源代码安装就好了
安装过程
tar xzvf jakarta-tomcat-connectors-1.2.15-src.tar.gz
进入jk/native目录
cd jakarta-tomcat-connectors-1.2.15-src/jk/native
编译安装
./configure --with-apxs=/usr/local/apache2/bin/apxs
make
拷贝编译完成生成的 mod_jk.so 文件, 这里也是要注意你的apache modules 目录位置
cp ./apache-2.0/mod_jk.so /usr/local/apache2/modules/
2.配置apache
在httpd.conf文件最下加入这一条配置
Include /usr/local/apache2/conf/extra/mod_jk.conf
在 extra文件夹下创建mod_jk.conf文件
vim mod_jk.conf
LoadModule jk_module modules/mod_jk.so
JkWorkersFile /usr/local/apache2/conf/extra/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel debug
JkMount /* lbcluster1
JkMount /status stat1
vim /usr/local/apache2/conf/extra/workers.properties
添加如下行
worker.list=lbcluster1,stat1
worker.TomcatA.port=8009
worker.TomcatA.host=192.168.10.10
worker.TomcatA.type=ajp13
worker.TomcatA.lbfactor=1
worker.TomcatB.port=8009
worker.TomcatB.host=192.168.10.11
worker.TomcatB.type=ajp13
worker.TomcatB.lbfactor=1
worker.lbcluster1.type=lb
worker.lbcluster1.sticky_session=0
worker.lbcluster1.balance_workers=TomcatA,TomcatB
worker.stat1.type=status
重启 apache服务
三.服务器集群的session复制
1.tomcat 的配置
修改 server.xml文件
tomcatA
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcatA">
tomcatB
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcatB">
然后去掉 下列配置的注释
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="8" />
2.修改应用的web.xml的文件
在文件里 下标</web-app> 上 添加配置 <distributable/>
重启tomcat 这样 apache+tomcat 集群就搭建完成了。