打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Apache2.2 + tomcat7 服务器集群配置

1.软件安装

1.1下载和安装apache

Apache 2.2 :http://httpd.apache.org/download.cgi,下载msi安装程序,选择no ssl版本

1.2下载和安装tomcat7.0.37(略)

2.Apache 配置

2.1启动自动加载代理模块

打开conf/httpd.conf去掉以下文本前的注释符(#)以便让Apache在启动时自动加载代理(proxy)模块。

LoadModule proxy_module modules/mod_proxy.soLoadModule proxy_ajp_module modules/mod_proxy_ajp.soLoadModule proxy_balancer_module modules/mod_proxy_balancer.soLoadModule proxy_connect_module modules/mod_proxy_connect.soLoadModule proxy_ftp_module modules/mod_proxy_ftp.soLoadModule proxy_http_module modules/mod_proxy_http.so
2.2增加index.jsp(可选)

在下列节点中增加index.jsp,目的是能看到首页(conf/httpd.conf文件)

<IfModule dir_module>DirectoryIndex index.html index.jsp</IfModule>
2.3开启虚拟站点配置

去掉Includeconf/extra/httpd-vhosts.conf前面的注释(conf/httpd.conf文件)

2.4配置虚拟站点

在conf/extra/httpd-vhosts.conf,配置虚拟站点,在最下面加上

<VirtualHost *:80>ServerAdmin xxx@126.comServerName localhostServerAlias localhostProxyPass / balancer://cluster/ stickysession=jsessionid nofailover=OnProxyPassReverse / balancer://cluster/ErrorLog "logs/thc-error.log"CustomLog "logs/thc-access.log" common</VirtualHost>

说明:这里balancer://是告诉Apache需要进行负载均衡的代理,后面的cluster是集群名(可以随意取),两个日志引擎ErrorLog负责记录错误,CustomLog负责记录所有的http访问以及返回状态,日志名可以自己取。

2.5配置代理

回到httpd.conf,在文档最下面加上:

ProxyRequests Off<proxy balancer://cluster>BalancerMember ajp://127.0.0.1:8009 loadfactor=1 route=jvm1# 如果第二个Tomcat放在另一台电脑上那么就输入那台电脑的ipBalancerMember ajp://127.0.0.1:9009 loadfactor=1 route=jvm2</proxy>

说明:ProxyRequestsOff 是告诉Apache需要使用反向代理,<proxy balancer://cluster> 用于配置工作在tomcat集群中的所有节点,这里的"cluster"必须与上面的集群名保持一致。Apache通过ajp协议与tomcat进行通信,ip地址和端口唯一确定了tomcat节点和配置的ajp接受端口。loadfactor是负载因子,Apache会按负载因子的比例向后端tomcat节点转发请求,负载因子越大,对应的tomcat服务器就会处理越多的请求,如两个tomcat都是1,Apache就按1:1的比例转发,如果是2和1就按2:1的比例转发。route参数对应后续tomcat配置中的引擎路径(jvmRoute)

重启Apache服务,如果此时访问http://localhost/将会返回503错误,打开刚才配置的错误日志logs/thc-error.log,可以看到错误原因是因为后台服务器没有响应,因为此时tomcat尚未配置和启动。

3.Tomcat 配置

解压出两个Tomcat,名字分别为:tomcat7_1,tomcat7_2。如果tomcat7_1和tomcat7_2不在同一台服务器上运行,对于端口就不需做改动。打开两个Tomcat中的server.xml文件

3.1修改http端口

找到

<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443"/>

在tomcat7_1中把8080改为7080,在tomcat7_2中把8080改为9080

3.2修改AJP端口

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

这是tomcat接收从Apache过来的ajp连接请求时使用的端口,tomcat7_1保持不变,把tomcat7_2端口改为9009。注意,这里的端口对应Apache httpd.conf中BalancerMember中配置的ajp连接端口。

3.3修改shutdown端口,将8005改成9005
<Serverport="9005" shutdown="SHUTDOWN">
3.4修改jvmRoute

找到<Enginename="Catalina" defaultHost="localhost">

Tomcat7_1修改为: <Engine name="Catalina" defaultHost="localhost"jvmRoute="jvm1">

Tomcat7_2修改为: <Engine name="Catalina"defaultHost="localhost" jvmRoute="jvm2">

这里的jvmRoute对应步骤3.5Apache httpd.conf中BalancerMember中配置的route参数。

3.5共享Session

找到<ClusterclassName="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>,打开注释。

这里的配置是为了可以在集群中的所有tomcat节点间共享会话(Session)。如果仅仅为了获得一个可用的tomcat集群,Cluster只需要这么配置就可以了

3.6web.xml配置

在每个需要session共享的web项目中,需要在web.xml中增加

<distributable/>

4.启动

先启动apache服务

再启动tomcat服务

注意apache的网络监听端口和tomcat的不要相同

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Apache + Tomcat集群配置详解
整合Tomcat和Apache
ACHE(proxy_ajp_stickysession) + TOMCAT实现高可用网站或管理系统集群
Apache与Tomcat的三种连接方式介绍
Win32环境下的Tomcat5.5.17与apache2.2的集群实践
apache2.2和tomcat5.5整合
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服