Apache + Tomcat + Linux 集群和均衡负载 (Session 同步复制) 配置实践指南
经过我的多次测试实践,在Linux和Windows下测试通过,win的比较简单,因为在默认的情况下,组播就已经打开。
1 在Linux 下同一台服务器上测试通过(注意端口不要冲突。特别要注意那个tcpListenPort=”4001″ )
2 在Windows下的同一台服务器上测试通过,注意要点同上
3 Windows下多台不同主机上测试通过,没有什么好注意点,可以完全备份一个tomcat
4.Linux多台不同tomcat服务器上测试通过。这个也是最后实现,最实际的方案。(一般不用在win下部署tomcatweb应用。呵呵。我觉得)
这里讲下第四中情况
先讲一下环境:都是在Red Hat Linux AS4上测试通过
Apache:ip:192.168.1.11 (一台) 版本:2.0/2.2 (做均换负载服务器)
Tomcat:ip1:192.168.1.12 ip2:192.168.1.13 (两台) 版本:5.0、5.5 (web应用的Real Server)
Jdk:版本1.5 安装在 192.168.1.12 和192.168.1.13上的tomcat服务器上
安装tomcat和apache ,在这里就不讲了。
软件都可以在 的网站上找到(apache,tomcat,mod_jk)
1.下载mod_jk.so 文件放到apache 下的modules下
地址: 请选择正确的操作系统和Apache的版本。
2.在apache的conf下建立文件workers.properties
添加内容:
#
# workers.properties
#
# list the workers by name
worker.list=tomcatlb, status
# localhost server 1
# ------------------------
worker.tomcat12.port=8009
worker.tomcat12.host=192.168.1.12
worker.tomcat12.type=ajp13
worker.tomcat12.lbfactor=1
worker.tomcat12.connection_pool_timeout=750
worker.tomcat12.socket_keepalive=0
worker.tomcat12.socket_timeout=300000
worker.tomcat12.connect_timeout=10000
worker.tomcat12.reply_timeout=330000
# localhost server 3
# ------------------------
worker.tomcat13.port=8009
worker.tomcat13.host=192.168.1.13
worker.tomcat13.type=ajp13
worker.tomcat13.lbfactor=1
worker.tomcat13.connection_pool_timeout=750
worker.tomcat13.socket_keepalive=0
worker.tomcat13.socket_timeout=300000
worker.tomcat13.connect_timeout=10000
worker.tomcat13.reply_timeout=330000
worker.tomcatlb.type=lb
worker.retries=3
worker.tomcatlb.balanced_workers=tomcat12,tomcat13
worker.tomcatlb.sticky_session=1
worker.status.type=status
3.在conf下添加一个mod_jk.conf文件
LoadModule jk_module modules/mod_jk.so
#configure mod_jk
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel debug