Apache+Tomcat集群配置

所需软件

 httpd-2.0.65-win32-x86-no_ssl.msi httpd-2.0.65-win32-x86-openssl-0.9.8y.msi

apache-tomcat-7.0.42

mod_jk.so

软件下载

下载ApacheApache是一个web服务器,主要负责解析静态内容,地址为http://httpd.apache.org/download.cgi#apache22,根据自身需要,下载相应的版本,每个版本都有no_sslopenssl两个版本,

下载tomcat,根据自身需要,下载相应的版本。

下载 mod_jk因为Apachetomcat集群,需要通过jk插件进行通讯,下载地址为http://mirrors.hust.edu.cn/apache/tomcat/tomcat-connectors/jk/binaries/windows/

软件安装

Apache

双击下载的msi文件进行安装,安装完成后,在浏览器地址栏里输入127.0.0.1,测试是否安装成功

Tocmat

运行Tomcat,看时候可以正常访问, 具体请参考网上其他教程

JK

复制下载的mod_jk.soD:\Apache2.2\modules目录中

软件配置

配置Apache

每个Tomcat worker是一个服务于web server、等待执行servletTomcat实例。例如我们经常使用像Apache之类的web server转发sevlet请求给位于其后面的一个Tomcat进程(也就是前面所说的worker)。

apache启动时,workers.properties作为插件将初始化出现在worker.list列表中的workers。每个worker的属性格式如worker.<worker名字>.<属性>=<属性值>

Apache根目录的conf目录里新建workers.properties文件,输入如下内容:

#server

worker.list = controller

#========tomcat1========

worker.tomcat1.port=8009

worker.tomcat1.host=localhost

worker.tomcat1.type=ajp13

worker.tomcat1.lbfactor = 1

#========tomcat2========

worker.tomcat2.port=8909

worker.tomcat2.host=localhost

worker.tomcat2.type=ajp13

worker.tomcat2.lbfactor = 1

#========controller,负载均衡控制器========

worker.controller.type=lb

worker.controller.balance_workers=tomcat1,tomcat2

worker.controller.sticky_session=true

worker.controller.sticky_session_force=1

上述文件简要解释如下:

worker.list:定义了apachetomcat通讯的一个进程名称(我的理解)

worker.tomcat1.port:配置tomcatajp端口号

worker.tomcat1.host:配置tomcat所在 主机的IP地址

worker.tomcat1.type:配置将通过ajp13tomcat进行通讯

worker.tomcat1.lbfactor :主要用于负载均衡。当此Tomcat worker被用于一个负载平衡worker使用时,此属性将被使用。它定义了此worker的负载平衡权值,此值越高,对于web server来说,其更加健壮。

注意:tomcat1此名称需要在tomcatserver.xml文件里进行配置

以下为worker的负载均衡的一些属性配置示例

worker.worker2.host=www2.x.com

worker.worker2.port=8009

worker.worker2.lbfactor=3.5

worker.worker2.cachesize=10

worker.worker2.cache_timeout=600

worker.worker2.socket_keepalive=1

/*worker "worker2" want ajp13 connection to be dropped after 5mn (timeout)*/

worker.worker2.socket_timeout=300

修改httpd.conf文件:

在此文件的103行左右,增加LoadModule jk_module modules/ mod_jk.so

修改184行左右的ServerName,最好修改为本机的IP地址

192行的DocumentRoot "F:/www",此处主要修改应用程序的存放路径,默认为htdocs目录

修改201行左右的

<Directory />

    Options FollowSymLinks

    AllowOverride None

    Order deny,allow

    Deny from all

</Directory>

<Directory />

    Options FollowSymLinks

    AllowOverride None

    Order deny,allow

    allow from all

</Directory>

 

在此文件的末尾增加如下代码:

JKWorkersFile conf/workers.properties 

JkLogFile logs/mod_jk.log

<VirtualHost jess2013:80>

    ServerAdmin localhost

    ServerName localhost

   

    DirectoryIndex index.html index.htm index.jsp index.action

    ErrorLog logs/shsc-error_log.txt

    CustomLog logs/shsc-access_log.txt common

 

    JkMount /*WEB-INF controller

    JkMount /*j_spring_security_check controller

    JkMount /*.action controller

    JkMount /servlet/* controller

    JkMount /*.jsp controller

    JkMount /*.do controller

    JkMount /*.action controller

    JkMount /*.jsp controller

 

    JkMount /*fckeditor/editor/filemanager/connectors/*.* controller

    JkMount /fckeditor/editor/filemanager/connectors/* controller

</VirtualHost>

注意:JkMount 主要用来配置,App的哪些文件需要Tomcat去解析,根据自身需要进行相应的配置

 

配置Tomcat

打开conf/server.xml文件,修改如下:

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />,此处的port对应workers.properties文件里worker.tomcat1.port对应

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

在此处增加jvmRoute参数,其值与workers.properties文件里的tomcat1相对应

配置完成后,把应用程序里的静态文件放在httpd.confDocumentRoot设置的目录,其他jspclass文件等需要动态解析的,则放在tomcat目录下

至此apache+tomcat集群的简单配置完成,下篇文章将推出关于ssl的相关配置

你可能感兴趣的:(tomcat集群)