ITPub博客

首页 > Linux操作系统 > Linux操作系统 > linux apache tomcat集群

linux apache tomcat集群

原创 Linux操作系统 作者:lixingping1985 时间:2010-06-09 13:59:41 0 删除 编辑

linux apache tomcat集群与apache和tomcat的整合(只用一个80端号来访问多个不同端口的tomcat下的应用)

环境:
两台linu,ip分别
192.168.88.29    (安装apache  ,两个tomcat ,jdk,jk) (两个tomcat-个是:8080 这个是与34集群的访问名另一个

是:9090安装另的应用,访问名www.test.com )

192.168.88.34    (安装tomcat ,jdk)

下载必须的软件:
httpd-2.2.10.tar.gz  (apache)
http://archive.apache.org/dist/httpd/

jakarta-tomcat-5.5.9.tar.gz (tomcat)
http://archive.apache.org/dist/tomcat/

http://archive.apache.org/dist/tomcat/tomcat-5/

jdk-1_5_0_15-linux-i586.bin  (jdk)
http://java.sun.com/javase/downloads/index_jdk5.jsp

mod_jk-1.2.28-httpd-2.2.X.so (apach与tomcat的jk)
http://apache.etoak.com/tomcat/tomcat-connectors/jk/binaries/

2安装所有的软件这个是在29上安装的说明
apache安装
#tar -zxvf httpd-2.2.10.tar.gz
#cd httpd-2.2.10
# mkdir /ucenter/apache2
#./configure --prefix=/ucenter/apache2 --enable-so --enable-mods-shared=all --enable-rewrite

# make
# make install
# /ucenter/apache2/bin/apachectl start

把mod_jk-1.2.28-httpd-2.2.X.so放到apache 下面
#cp mod_jk-1.2.28-httpd-2.2.X.so /ucenter/apache2/modules/

tomcat 和jdk安装
#tar -zxvf jakarta-tomcat-5.5.9.tar.gz
#mv jakarta-tomcat-5.5.9 tomcat1

#./jdk-1_5_0_15-linux-i586.bin
#mv jdk-1_5_0_15 jdk1.5
#cd ~
#vi .bash_profile

export JAVA_HOME=/tomcat/jdk1.5
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$CLASSPATH

export CATALINA_BASE=/tomcat/tomcat1
export CATALINA_HOME=/tomcat/tomcat1
export TOMCAT_HOME=/tomcat/tomcat1

export CATALINA_1_BASE=/tomcat/tomcat3
export CATALINA_1_HOME=/tomcat/tomcat3
export TOMCAT_1_HOME=/tomcat/tomcat3


到tomcat1/bin下面

#vi catlina.sh

export CATALINA_BASE=/tomcat/tomcat1
export CATALINA_HOME=/tomcat/tomcat1

再到tomcat3/bin下面

#vi catlina.sh

export CATALINA_BASE=/tomcat/tomcat3
export CATALINA_HOME=/tomcat/tomcat3


3.到29上的apach/conf下 http.conf 同目录下新建mod_jk.conf文件,内容如下

#vi mod_jk.conf  

#加载mod_jk Module
LoadModule jk_module modules/mod_jk-1.2.28-httpd-2.2.X.so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器
JkMount /*.jsp controller



4.到29上的apach/conf在http.conf同目录下新建 workers.properties文件,内容如下

#vi workers.properties
 
worker.list = controller,tomcat1,tomcat2,tomcat3  #server 列表
#========tomcat1========
worker.tomcat1.port=8009         #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost  #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1   #server的加权比重,值越高,分得的请求越多

#========tomcat2========
worker.tomcat2.port=8009       #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat2.host=192.168.88.34  #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1   #server的加权比重,值越高,分得的请求越多


#========tomcat3========
worker.tomcat3.port=9009       #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat3.host=localhost  #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat3.type=ajp13
worker.tomcat3.lbfactor = 1   #server的加权比重,值越高,分得的请求越多


#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2,tomcat3   #指定分担请求的tomcat
worker.controller.sticky_session=1


5到29上的apach/conf在http.conf同目录下新建vhost.conf文件,内容如下

#vi vhost.conf

#因为是80端口所以只写以下内容就行了
DocumentRoot /tomcat/tomcat1/webapps/ROOT
ServerName


DocumentRoot /tomcat/tomcat3/webapps/ROOT
ServerName www.test.com

5.到apache下的conf到httpd.conf的最底下写入两句话

#vi httpd.conf
include /ucenter/apache/conf/mod_jk.conf
include /ucenter/apache/conf/vhost.conf


6到29上的/tomcat/tomcat1/conf下的server.xml写入
#vi server.xml

#把jvmRoute="tomcat1"加入下面和把localhost改为
 

#把localhost改为
        unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">

# 把后面的 -->去掉

                 managerClassName="org.apache.catalina.cluster.session.DeltaManager"
                 expireSessionsOnShutdown="false"
                 useDirtyFlag="true"
                 notifyListenersOnReplication="true">

                            className="org.apache.catalina.cluster.mcast.McastService"
                mcastAddr="228.0.0.4"
                mcastPort="45564"
                mcastFrequency="500"
                mcastDropTime="3000"/>

                            className="org.apache.catalina.cluster.tcp.ReplicationListener"
                tcpListenAddress="auto"
                tcpListenPort="4001"
                tcpSelectorTimeout="100"
                tcpThreadCount="6"/>

                            className="org.apache.catalina.cluster.tcp.ReplicationTransmitter"
                replicationMode="pooled"
                ackTimeout="15000"/>

                               filter=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>
                  
                                  tempDir="/tmp/war-temp/"
                      deployDir="/tmp/war-deploy/"
                      watchDir="/tmp/war-listen/"
                      watchEnabled="false"/>
       



由于29上只是安装一个tomcat作为集群,所以tcpListenPort="4001" 这个端口不用改,如果是两个tomcat在一台机作集群那就要改

tcpListenPort这个端口


7再到/tomcat/tomcat3/conf/server.xml

#vi server.xml

#把port="8005"改为9005


#把Connector port="8080"改为9090
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />

#把Connector port="8009"改为9009
               enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

#把jvmRoute="tomcat3"加入下面和把localhost改为www.test.com
 

#把localhost改为www.test.com
        unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">

这样29上的安装和配置就基本上是完成的了

34上就是只安装tomcat和jdk再和29上的第6步安装修一下就行了

全部完成后,检验:

打开ie  是出来集群的应用

    www.test.com是打开29上别外的一个应用

再把29上tomcat1关掉
ie 看看还有没有集群应用,有就说明集群成了

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/16111659/viewspace-664792/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: linux apache mysql php
请登录后发表评论 登录
全部评论

注册时间:2008-12-16

  • 博文量
    35
  • 访问量
    66618