Apache2.4+Tomcat7集群搭建
一、安装jdk、Tomcat、Apache
1.安装jdk和Tomcat,去官网下载解压简单配置就可运行Tomcat。
2.安装Apache,去官网下载最新的Apache源码包。安装时要指定apr,所以如果操作系统没有安装请下载安装apr、apr-util和pcre。
tar -zxvf httpd-*
./configure --prefix=/work/installed/apache --with-apr=/work/installed/apr --with-apr-util=/work/installed/apr-util --with-pcre=/work/installed/pcre
make
make install
修改conf/httpd.conf,ServerName localhost:80
二、安装jk
下载jk http://tomcat.apache.org/download-connectors.cgi
解压
cd tomcat-connectors-1.2.40-src/native/
./configure --with-apxs=/usr/local/apache2/bin/apxs --with-java-home=/usr/jdk1.7
make
make install
三、配置集群
1.配置jk_module模块,vim conf/httpd.conf增加如下内容
LoadModule jk_module modules/mod_jk.so
<IfModule jk_module>
JkWorkersFile conf/workers.properties
JkMount /* controller
JkLogFile logs/mod_jk.log
JkLogLevel warn
</IfModule>
将LoadModule rewrite_module modules/mod_rewrite.so前面#去掉。
2.在conf目录下vim workers.properties加入如下内容:
- worker.list = controller
- #========tomcat1========
- worker.tomcat1.port=8009 #指定tomcat2服务器AJP的端口,默认为8009
- worker.tomcat1.host=192.168.1.100 #指定tomcat2服务器IP或域名
- worker.tomcat1.type=ajp13 #指定tomcat2与apache AJP通讯协议
- worker.tomcat1.lbfactor=1 #指定负载平衡因数,只有启用了负载平衡才有用.
- #========tomcat2========
- worker.tomcat2.port=8009
- worker.tomcat2.host=192.168.1.200
- worker.tomcat2.type=ajp13
- worker.tomcat2.lbfactor=1
- #========controller负载平衡控制器========
- worker.controller.type=lb #指定controller类型
- worker.controller.balanced_workers=tomcat1,tomcat2 #指定负载平衡的tomcat
- worker.controller.sticky_session=true #指定是否粘性session
- worker.controller.sticky_session_force=false
- worker.connection_pool_size=3000
- worker.connection_pool_minsize=50
- worker.connection_pool_timeout=50000
- # session配置说明:
- #当sticky_session,sticky_session_force都为true时不复制session,
- #sticky_session_force=false指集群中某台服务器多次请求没有响应,则转发到其它服务器处理,
- #sticky_session=false不使用粘性session,同时配置不复制session时,注意转发请求后可能会找不到原来的session.
3.修改每个tomcat的conf/server.xml
<Engine name="Catalina" defaultHost="localhost" jvmRoute="Tomcat1">
<Cluster classname="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
4.修改web应用里面WEB-INF目录下的web.xml文件,加入标签
<distributable/>直接加在</web-app>之前就可以了
做tomcat集群必须需要这一步,否则用户的session就无法正常使用。