首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 服务器 > Apache >

Apache2.2.x + Tomcat 6.0.18 集群配备详解

2012-07-04 
Apache2.2.x + Tomcat 6.0.18 集群配置详解修改apache的httpd.conf?1.?添加模块?LoadModule?proxy_module?

Apache2.2.x + Tomcat 6.0.18 集群配置详解

修改apache的httpd.conf

?

1.?添加模块

?

LoadModule?proxy_module?modules/mod_proxy.so

LoadModule?proxy_ajp_module?modules/mod_proxy_ajp.so

LoadModule?proxy_balancer_module?modules/mod_proxy_balancer.so

?

2.?配置Virtual?hosts

打开Virtual?hosts?即去掉Include?conf/extra/httpd-vhosts.conf一行的注释,

??同时修改文件httpd-vhosts.conf,添加如下虚拟机信息

<VirtualHost?*:80>

ServerAdmin?mxl001@126.com?

ServerName?localhost?

ServerAlias?localhost?

ProxyPass?/?balancer://tomcatcluster/?stickysession=jsessionid?nofailover=On?

ProxyPassReverse?/?balancer://tomcatcluster/?

ErrorLog?"logs/dummy-host.zypwt.com-error.log"

CustomLog??"logs/dummy-host.zypwt.com-access.log"

</VirtualHost>

?

说明:ProxyPass为代理转发Url,即将所有访问/的请求转发到群集balancer://tomcatcluster?

??????这里balancer://是告诉Apache需要进行负载均衡的代理,后面的tomcatcluster是集群名(可以随意取),

??????两个日志引擎ErrorLog负责记录错误,CustomLog负责记录所有的http访问以及返回状态,日志名可以自己取。

?httpd-vhosts.conf配置完毕,回到httpd.conf。

?

?

3.?添加群集配置

在httpd.conf文档最下面加上

ProxyRequests?Off?

<Proxy?balancer://tomcatcluster>?

BalancerMember?ajp://www.zypwt.com:8009?loadfactor=1??route=tomcat1

BalancerMember?ajp://www.zypwt.com:9009?loadfactor=1??route=tomcat2

</Proxy>?

?

ProxyRequests?Off?是告诉Apache需要使用反向代理(利用Apache进行负载均衡必须使用反向代理)

BalancerMember为群集balancer://tomcatcluster的成员,即群集服务器A或B,负载均衡服务器会根据均衡规则来将请求转发给BalancerMember。?

<proxy?balancer://tomcatcluster>?用于配置工作在tomcat集群中的所有节点,这里的"tomcatcluster"必须与上面的集群名保持一致。

Apache通过ajp协议与tomcat进行通信,ip地址和端口唯一确定了tomcat节点和配置的ajp接受端口。

loadfactor是负载因子,Apache会按负载因子的比例向后端tomcat节点转发请求,负载因子越大,对应的tomcat服务器就会处理越多的请求,如两个tomcat都是1,Apache就按1:1的比例转发,如果是2和1就按2:1的比例转发。

route参数对应后续tomcat配置中的引擎路径(jvmRoute)。

?

?

?

二、修改群集成员tomcat配置文件server.xml?

?

?

1.?端口

?

????首先是配置关闭端口

?????找到<Server?port="8005"?shutdown="SHUTDOWN">,修改port值,避免冲突,如新添加的tomcat中可设为:

????<Server?port="9005"?shutdown="SHUTDOWN">

????

????其次http?连接器端口

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

????可设为

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

?????

????最后修改AJP连接器端口:

???????<!--?Define?an?AJP?1.3?Connector?on?port?8009?-->

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

????可根据需要修改port值,需要与BalancerMember中的端口保持一致

????

2.?jvmRoute

????<!--?You?should?set?jvmRoute?to?support?load-balancing?via?AJP?ie?:

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

?????可根据需要修改jvmRoute值,需要与BalancerMember中的route保持一致

?????

?????

通过以上步骤即可完成apache与tomcat的负载均衡配置,?如果需要向集群中增加节点,首先需要对tomcat作类似配置,然后修改Apache?httpd.conf,增加BalancerMember,指向新增的tomcat即可。

热点排行