Apache负载均衡会话黏贴配置(JK模式)

在工作中,由于其他产品与Apache的反向代理模式工作的不太好,所以需要把Apache与应用服务器(Tomcat)的协同配置长mod_jk方式下的会话黏贴模式,在配置过程中,还是遇到了一些问题,主要是忘了修改Tomcat/conf/server.xml中的jvmRoute的名称,导致会话黏贴一直不成功。下面以配置Apache与应用“app”整合为例,说明Apache如何与IP为“192.168.3.119”和“192.168.3.116”两台机器上app应用协同的。

1.1  ApacheJK设置 1.1.1  打开mod_jk模块并拦截app请求

打开apache安装目录下的conf/httd.conf文件,在文件末尾增加上如下代码(如果以前用过其他方式配置apache与该app的集成,需要去掉相关配置;如果没有,则直接加上下面的配置)。这里apache的配置端口是81apache默认配置端口是80,在实际使用中需要替换为apache的监听端口。

此示例中配置了对所有的webpic应用的请求,webpic应用的地址需要替换为实际的地址(这个是一个图片的获取应用,如果没有图片获取,则可以去掉webpic的配置)。下面的红色字体部分是需要注意的地方,如下:

     

#加载mod_jk Module

LoadModule jk_module modules/mod_jk.so

#指定appbalancer_jk.properties文件路径。

#如果apacheconf目录下没有该配置文件,则创建。内容见下节

JkWorkersFile conf/appbalancer_jk.properties

<VirtualHost    *:81>

     

      AddType text/Javascript .js

      AddType text/css; .css

      AddType text/html;charset=UTF-8 .html

      ServerName my.app.com

      ServerAdmin test@sina.com.cn

 

      #webpic,Request static resources.

      Alias /webpic "D:\APPV7005\WCMData\webpic"

      <Directory "D:\APPV7005\WCMData\webpic">

              Options -Indexes MultiViews    FollowSymLinks Includes

              AllowOverride None

              Order allow,deny

              Allow from all

      </Directory>

     

      #指定那些请求交给tomcat处理

      JkMount /app/services appbalance

      JkMount /app/*.* appbalancer

      JkMount /*.do appbalancer

      JkMount /app appbalancer

      JkMount /app/ appbalancer

      JkMount /app/sd appbalancer

</VirtualHost>

 

                           

 

如果apache在编译时没有编译mod_jk.so模块,则可以进入apache官方网站进行下载,mod_jk下载的地址如下:

进入网址后,根据自己apache所安装的操作系统进行下载,如果是linux系统,则点击linux链接,根据apache的版本选择相应的mod_jk.so文件进行下载。

1.1.2  设置appbalancer_jk.properties文件

打开conf目录下的“appbalancer_jk.properties”文件(如果该文件不存在,则新建该文件),在文件中填入如下内容。我们只要替换该文件中的ip地址端口号app应用的实际ip地址ajp通信端口即可。红色字体部分是我们需要替换的地方,如下表。m119m116分别是APP应用服务器的jvmRoute名称,见下节配置。

     

#server 列表.mxxx是节点的名字,有多少个节点就设置几个

worker.list=appbalancer,m119,m116

 

#ajp13 端口号,在tomcatserver.xml配置,默认8009

#tomcat的主机地址,如不为本机,请填写ip地址

#server的加权比重,值越高,分得的请求越多。

#可以将主节点的比重设置为小一点的值

#========m119========

worker.m119.port=8009

worker.m119.host=192.168.3.119

worker.m119.type=ajp13

worker.m119.lbfactor=2

#========m116========

worker.m116.port=8009

worker.m116.host=192.168.3.116

worker.m116.type=ajp13

worker.m116.lbfactor=3

 

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

worker.appbalancer.type=lb

worker.appbalancer.balance_workers=m119,m116

worker.appbalancer.sticky_session=true

 
1.1.3  修改TomcatServer.xml

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/c9be52307f7d556493b6c68a1103675a.html