最近实现了Apache+Tomcat的负载均衡,所以来记录一下
主要参考了下面的文章
https://www.cnblogs.com/xiuxun/p/7563484.html#commentform
首先去官网下载:
Apache
https://www.apachehaus.com/downloads/httpd-2.4.39-o102s-x86-vc14.zip
Tomcat
下载好以后解压到一个文件夹中
就是下面的目录结构(tomcat下载一次后复制一次)
先配置环境变量
CATALINA_HOME1 E:\ApacheGroup\apache-tomcat-7.0.94-1
CATALINA_HOME2 E:\ApacheGroup\apache-tomcat-7.0.94-2
CATALINA_BASE1 E:\ApacheGroup\apache-tomcat-7.0.94-1
CATALINA_BASE2 E:\ApacheGroup\apache-tomcat-7.0.94-2
配置Apache
Apache主要需要修改的文件有Apache24/conf/httpd.conf 和Apache24/conf/extra/httpd-vhosts.conf
httpd.conf主要需要修改的地方有
Define SRVROOT "E:\ApacheGroup\Apache24" 这里需要改成你自己的apache的路径
Listen 88 如果你的80端口已经使用了,那么可以改成别的 比如88
然后在下面有 LoadModule的地方把下面的模块添加进去
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
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
然后把下面这条引用前面的注释去掉
Include conf/extra/httpd-vhosts.conf
然后在最后添加
ProxyRequests off
ProxyPassReverse / balancer://tomcatcluster/
<proxy balancer://cluster>
BalancerMember ajp://127.0.0.1:8021 loadfactor=1 route=tomcat01
BalancerMember ajp://127.0.0.1:8022 loadfactor=1 route=tomcat02
</proxy>
然后在配置httpd-vhosts.conf
在httpd-vhosts.conf最后添加下面的配置
#虚拟机配置,负载均衡配置 注意空格
<VirtualHost *:88>
ServerAdmin localhost
ServerName localhost
ServerAlias localhost
ProxyPass / balancer://cluster/ stickysession=jsessionid nofailover=On
ProxyPassReverse / balancer://cluster/
ErrorLog "logs/lbtest-error.log"
CustomLog "logs/lbtest-access.log" common
</VirtualHost>
配置Tomcat
Tomcat主要需要配置的是apache-tomcat-7.0.94-1/conf/server.xml
我为了方便查看分别吧下面的端口号配置成8001,8011,8012