日期:2014-5-16 浏览次数:20150次 点赞次数:20

apache tomcat 6集群负载和session复制

????无意间看到tomcat 6集群的内容,就尝试配置了一下,还是遇到很多问题,特此记录。apache服务器和tomcat的连接方法其实有三种:JK、http_proxy和ajp_proxy。本文主要介绍最为常见的JK。

环境:PC2台:pc1(IP 192.168.88.118)安装了apache和tomcat

???????????????????? pc2(IP 192.168.88.168)安装了tomcat

???????? 系统 win xp sp3

? 1.安装tomcat、apache服务器及版本对应的JK

??这里需要注意的是JK版本必须与apache服务器版本号对应,可以直接从我参考附件下载。apache_home表示apache服务器安装目录.

? 2.配置apache服务器

??2.1 httpd.conf文件

?apache_home目录下的conf/httpd.conf文件中添加

LoadModule jk_module modules/mod_jk-1.2.26-httpd-2.2.4.so
JkWorkersFile conf/workers.properties
JkMount /* lbcontroller 

?具体的说明如下:

LoadModule jk_module modules/mod_jk-1.2.26-httpd-2.2.4.so

?表示载入JK模块。

JkWorkersFile conf/workers.properties

tomcat实例配置,具体参见2.2。

JkMount /* lbcontroller 

??设置apache分发器,/*表示apache将所有文件都由分发器lbcontroller 进行分发,你可以自行设置*.jsp,*.do等?

??2.2 workers.properties文件

在apache_home下conf目录中新建workers.properties文件,输入以下内容

worker.list=lbcontroller

#Tomcat1实例配置
worker.tomcat1.host=192.168.88.118
worker.tomcat1.port=8009
worker.tomcat1.type=ajp13
#分发权重 值越大负载越大
worker.tomcat1.lbfactor = 1

#Tomcat2实例配置
worker.tomcat2.host=192.168.88.168
worker.tomcat2.port=9009
worker.tomcat2.type=ajp13
#分发权重 值越大负载越大
worker.tomcat2.lbfactor = 1

#负载均衡分发控制器
worker.lbcontroller.type=lb
worker.lbcontroller.balance_workers=tomcat1,tomcat2
worker.lbcontroller.sticky_session=True

?在这里

worker.list=lbcontroller

?内容即为httpd.conf文件中的分发器名称。需要注意的内容是,tomcat实例名称

worker.tomcat1.host=....
...
worker.tomcat2.host=....
...

?在这里就是tomcat1和tomcat2必须与之后tomcat中的server.xml中jvmRoute值一致。

3.tomcat集群配置

配置每个tomcat目录下的server.xml文件,具体修改内容如下

3.1 Engine配置

修改前

<Engine name="Catalina" defaultHost="localhost">

修改后

 <Engine name="Catalina" defaultHost="localhost"  jvmRoute="tomcat1" >

?具体tomcat中jvmRoute的值根据在workers.properties的配置,注意IP地址、tomcat实例名称和jvmRoute值必须一一对应。

3.2 Connector配置

修改前

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

修改后

    <Connector port="9009" protocol="AJP/1.3" redirectPort="8443" />

?这里tomcat的port值必须与在workers.properties中的port值一致。

3.3 Cluster配置