设为首页 收藏本站
查看: 758|回复: 0

[经验分享] Apache 负载均衡+Tomcat集群(测试)

[复制链接]

尚未签到

发表于 2017-1-4 11:11:50 | 显示全部楼层 |阅读模式
   一、本机环境
1.Windows 7 64位操作系统
2.java版本 "1.6.0_20"
3.Apache安装包httpd-2.2.21-win32-x86-no_ssl.msi,默认安装
4.tomcat压缩包(apache-tomcat-6.0.24.zip)
5.在一台机器上进行的
 
二、配置
1.前提是Apache安装正确,启动正常
 
2.解压缩多个tomcat,例如d:\tomcat_01,d:\tomcat_02
 
3.配置httpd.conf文件
 
找到如下信息,并进行修改
 
Html代码   DSC0000.png


  • #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 proxy_connect_module modules/mod_proxy_connect.so  
  • #LoadModule proxy_ftp_module modules/mod_proxy_ftp.so  
  • #LoadModule proxy_http_module modules/mod_proxy_http.so  

Html代码  


  • #Include conf/extra/httpd-vhosts.conf  

 
 去掉注释
 
在httpd.conf最后加上如下代码
 
Html代码  


  • ProxyRequests Off  
  • <proxy balancer://cluster>  
  •     BalancerMember ajp://127.0.0.1:8009 loadfactor=1 route=jvm1  
  •     BalancerMember ajp://127.0.0.1:9009 loadfactor=1 route=jvm2  
  • </proxy>  

 
上面的BalancerMember成员是配置tomcat集群的 
 
4.配置httpd-vhosts.conf文件
 
找到如下代码
 
Html代码  


  • <VirtualHost *:80>  
  •     ServerAdmin webmaster@dummy-host.sm.com  
  •     DocumentRoot "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/docs/dummy-host.sm.com"  
  •    ServerName dummy-host.sm.com  
  •     ServerAlias www.dummy-host.sm.com  
  •     ErrorLog "logs/dummy-host.sm.com-error.log"  
  •     CustomLog "logs/dummy-host.sm.com-access.log" common  
  • </VirtualHost>  
  •   
  • <VirtualHost *:80>  
  •     ServerAdmin webmaster@dummy-host2.sm.com  
  •     DocumentRoot "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/docs/dummy-host2.sm.com"  
  •     ServerName dummy-host2.sm.com  
  •     ErrorLog "logs/dummy-host2.sm.com-error.log"  
  •     CustomLog "logs/dummy-host2.sm.com-access.log" common  
  • </VirtualHost>  

 
 找到这些代码删除或者注释掉
 
在httpd-vhosts.conf文件最后加入如下代码
 
Html代码  


  • <VirtualHost *:80>  
  •     ServerAdmin test@qq.com  
  •     ServerName localhost  
  •     ServerAlias localhost  
  •     ProxyPass / balancer://cluster/  
  •     ProxyPassReverse / balancer://cluster/  
  •     ErrorLog "logs/dummy-host2.sm.com-error.log"  
  •     CustomLog "logs/dummy-host2.sm.com-access.log" common  
  • </VirtualHost>  

域名与路径根据自己需要配置
 
 
5.配置tomcat,修改conf/server.xml文件
说明,我只用了两个tomcat集群
修改第二个tomcat(两个tomcat任意设置一个)
 
 
Html代码  


  • <Server port="8005" shutdown="SHUTDOWN">  
  •   
  • 将8005改为9005,防止与第一个冲突  

Html代码  


  • <Connector port="8080" protocol="HTTP/1.1"   
  •                connectionTimeout="20000"   
  •                redirectPort="8443" />  
  •   
  • 将8080改为9080,将8443改为9443  

Html代码  


  • <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />  
  • 将8009改为9009,将8443,改为9443  

 
两个tomcat均需要做如下改动
 
Java代码  


  • 找到  
  • <Engine name="Catalina" defaultHost="localhost"  >  
  • 改成  
  • <Engine name="Catalina" defaultHost="localhost"  jvmRoute="jvm2">  
  •   
  • 并在<Engine name="."..></Engine>标签中加上如下代码  
  •   
  •     <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="6">  
  •         <Manager className="org.apache.catalina.ha.session.BackupManager" expireSessionsOnShutdown="false"   
  •         notifyListenersOnReplication="true" mapSendOptions="6"/>  
  •         <Channel className="org.apache.catalina.tribes.group.GroupChannel">  
  •             <Membership className="org.apache.catalina.tribes.membership.McastService"  
  •                 address="228.0.0.4" port="45565" frequency="500" dropTime="3000"/>  
  •             <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"  
  •                 address="auto" port="5002" selectorTimeout="100" maxThreads="6"/>  
  •             <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">  
  •                 <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>  
  •             </Sender>  
  •             <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>  
  •             <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>  
  •             <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>  
  •         </Channel>  
  •         <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"  
  •             filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>  
  •         <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"  
  •             tempDir="/tmp/war-temp/" deployDir="/tmp/war-deploy/" watchDir="/tmp/war-listen/" watchEnabled="false"/>  
  •         <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>  
  •     </Cluster>  

 
第一个tomcat配置为<Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
 
Java代码  


  • 改动Membership port 的值与另一个设置为不同  

Java代码  


  • 改动Receiver port的值与另一个设置为不同  

为了防止冲突
 
6.所有配置已经完毕,我们现在可以进行测试
 
7.为了让效果更加明显,我们改动\tomcat_01\webapps\ROOT\index.html,在<body></dody>中加上<h1>tomcat1</h1>
   改动\tomcat_02\webapps\ROOT\index.html,在<body></dody>中加上<h1>tomcat2</h1>
 
8.在浏览器中输入http://localhost,看看效果吧!刷新一下会有意外惊喜
 
转载自:http://www.iteye.com/topic/1119823

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-323789-1-1.html 上篇帖子: 【转】tomcat+apache 集群+负载均衡 下篇帖子: 浏览器、apache的连接超时详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表