Apache+Tomcat+Linux集群和均衡负载配置实践指南_Linux服务器维护_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

Apache+Tomcat+Linux集群和均衡负载配置实践指南

作者:黑客防线网安网站维护基地 来源:黑客防线网安网站维护基地 浏览次数:0

本篇关键词:ApacheTomcatLinux
黑客防线网安网讯:   Apache + Tomcat + Linux 集群和均衡负载 (Session 同步复制) 配置实践指南
 
经过我的多次测试实践,在linux和window下测试通过,win的比较简单,因为在默认的情况下,组播就已经打开。

   Apache + Tomcat + Linux 集群和均衡负载 (Session 同步复制) 配置实践指南
 
经过我的多次测试实践linux和window下测试通过win的比较简单,因为在默认的情况下,组播就已经打开


    1 在linux 下同一台服务器上测试通过(注意端口不要冲突特别要注意那个tcpListenPort=”4001″ )


    2 在window下的同一台服务器上测试通过,注意要点同上


    3 window下多台不同主机上测试通过,没有什么好注意点,可以完全备份一个tomcat


    4.linux多台不同tomcat服务器上测试通过。这个也是最后实现,最实际的方案。


    这里讲下第四中情况


    先讲一下环境:都是在Red Hat Linux AS4上测试通过


    Apache:ip:192.168.1.11 (一台) 版本:2.0/2.2 (做均换负载服务器)


    Tomcat:ip1:192.168.1.12 ip2:192.168.1.13 (两台) 版本:5.0、5.5 (web应用的Real Server)


    Jdk:版本1.5 安装在 192.168.1.12 和192.168.1.13上的tomcat服务器上


    安装tomcat和apache ,在这里就不讲了。


    软件都可以在www.apache.org 的网站上找到(apache,tomcat,mod_jk)


    1.下载mod_jk.so 文件放到apache 下的modules下


    地址:http://apache.mirror.phpchina.com/tomcat/tomcat-connectors/jk/binaries/ 请选择正确的操作系统和Apache的版本。


    2.在apache的conf下建立文件workers.properties


    添加内容:


    #


    # workers.properties


    #


    # list the workers by name


    worker.list=tomcatlb, status


    # localhost server 1


    # ------------------------


    worker.tomcat12.port=8009


    worker.tomcat12.host=192.168.1.12


    worker.tomcat12.type=ajp13


    worker.tomcat12.lbfactor=1


    worker.tomcat12.connection_pool_timeout=750


    worker.tomcat12.socket_keepalive=0


    worker.tomcat12.socket_timeout=300000


    worker.tomcat12.connect_timeout=10000


    worker.tomcat12.reply_timeout=330000


    # localhost server 3


    # ------------------------


    worker.tomcat13.port=8009


    worker.tomcat13.host=192.168.1.13


    worker.tomcat13.type=ajp13


    worker.tomcat13.lbfactor=1


    worker.tomcat13.connection_pool_timeout=750


    worker.tomcat13.socket_keepalive=0


    worker.tomcat13.socket_timeout=300000


    worker.tomcat13.connect_timeout=10000


    worker.tomcat13.reply_timeout=330000


    worker.tomcatlb.type=lb


    worker.retries=3


    worker.tomcatlb.balanced_workers=tomcat12,tomcat13


    worker.tomcatlb.sticky_session=1


    worker.status.type=status


    3.在conf下添加一个mod_jk.conf文件


    LoadModule    jk_module  modules/mod_jk.so


    #configure mod_jk


    JkWorkersFile conf/workers.properties


    JkLogFile logs/mod_jk.log


    JkLogLevel debug

    4.增加一个虚拟机配置文件vhosts.conf (这个不是必须的,可以将JkMount 的写其他的配置文件中)


    ServerAdmin 

    DocumentRoot /data/google


    ServerName my.linuxcoffee.org


    ErrorLog logs/my.linuxcoffee.org-error_log


    CustomLog logs/my.linuxcoffee.org-access_log common


  &n bsp; DirectoryIndex index.htm  index.html
 

    JkMount /*.jsp tomcatlb


 

    JkMount /*.action tomcatlb


 

    JKMount /jkstatus status


 

    4.修改conf下的httpd.conf文件加上


 

    Include conf/vhosts.conf


 

    Include conf/mod_jk.conf


 

    5.配置tomcat


 

    讲Cluster 前的注释去掉,启用tomcat集群功能。


 

    一般不需要修改什么东西,但在我这边,两台linux的tomcat就是死活找不到node,而同样的配置文件在window下的跑得很是正常。


 

    有个东西要说明下,因为tomcat的session同步功能需要用到组播,windows默认情况下是开通组播服务的,但是linux默认情况下并没有开通,可以通过指令打开route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0,如果需要服务器启动时即开通组播需在/etc/sysconfig/static-routes文件内加入eht0 net 224.0.0.0 netmask 240.0.0.0。具体组播概念请查阅CCNP相关内容。


 

    可以通过netstate -g 来查看组播状态,也可以在route -e 命令中看到


 

    原来一直提示这个问题


 

    信息: Manager [/clusterapp]: skipping state transfer. No members active in cluster group.


 

    最后测试只要修改在Cluster之间的一段代码


 

    Receiver


 

    className="


 

    org.apache.catalina.cluster.tcp.ReplicationListener"


 

    tcpListenAddress="auto"


 

    tcpListenPort="4001"


 

    tcpSelectorTimeout="100"


 

    tcpThreadCount="6"/>


 

    改为


 

    Receiver


 

    className="


 

    org.apache.catalina.cluster.tcp.ReplicationListener"


 

    tcpListenAddress="192.168.1.12"


 

    tcpListenPort="4001"


 

    tcpSelectorTimeout="100"


 

    tcpThreadCount="6"/>


 

    在13的服务器上也将这一段修改为自己的ip


 

    然后打开jvmRoute ,跟workers.properties 的两个tomcat名字相匹配


 

    ip1


 

    Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat12"/>


 

    ip2


 

    Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat13"/>


 

    好了,apache和tomcat的配置好了,可以访问了。


 

    这里,再提供一个链接,可以监控和配置负载均衡的各种信息


 

    http://192.168.1.11/jkstatushttp://my.linuxcoffee.org、jkstatus来访问网站。


 

    注:需要在web.xml的display-name后面 下加上一段。 这个跟顺序有关的,不然,xml文件会变红哦。


 

    xml version="1.0" encoding="UTF-8"?>


 

    web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">


 

    display-name>TomcatDemodisplay-name>


 

    distributable/>


 

    web-app>

 

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-4706-1.html
网站维护教程更新时间:2011-01-02 01:02:26  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer