Apache负载均衡会话黏贴配置(JK模式)
2012-11-25 09:04
411 查看
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应用协同的。
此示例中配置了对所有的webpic应用的请求,webpic应用的地址需要替换为实际的地址(这个是一个图片的获取应用,如果没有图片获取,则可以去掉webpic的配置)。下面的红色字体部分是需要注意的地方,如下:
如果apache在编译时没有编译mod_jk.so模块,则可以进入apache官方网站进行下载,mod_jk下载的地址如下:
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/
进入网址后,根据自己apache所安装的操作系统进行下载,如果是linux系统,则点击linux链接,根据apache的版本选择相应的mod_jk.so文件进行下载。
这里需要注意的是,“m116”需要根据实际情况填写,通常命名的格式是“m”加上知识库所在的IP地址。如IP为“192.168.3.116”,则jvmRoute可以命名为“m116”。统一命名,方便管理。
注意:
本章节以两个APP节点为例,需要分别打开两个APP的Tomcat/conf/server.xml文件,jvmRoute分别设置为“m116”和“m119”,每个APP的jvmRoute名称是不能相同的。
在工作中,由于其他产品与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 Apache与JK设置
1.1.1 打开mod_jk模块并拦截app请求
打开apache安装目录下的conf/httd.conf文件,在文件末尾增加上如下代码(如果以前用过其他方式配置apache与该app的集成,需要去掉相关配置;如果没有,则直接加上下面的配置)。这里apache的配置端口是81,apache默认配置端口是80,在实际使用中需要替换为apache的监听端口。此示例中配置了对所有的webpic应用的请求,webpic应用的地址需要替换为实际的地址(这个是一个图片的获取应用,如果没有图片获取,则可以去掉webpic的配置)。下面的红色字体部分是需要注意的地方,如下:
#加载mod_jk Module LoadModule jk_module modules/mod_jk.so #指定appbalancer_jk.properties文件路径。 #如果apache的conf目录下没有该配置文件,则创建。内容见下节 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> |
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/
进入网址后,根据自己apache所安装的操作系统进行下载,如果是linux系统,则点击linux链接,根据apache的版本选择相应的mod_jk.so文件进行下载。
1.1.2 设置appbalancer_jk.properties文件
打开conf目录下的“appbalancer_jk.properties”文件(如果该文件不存在,则新建该文件),在文件中填入如下内容。我们只要替换该文件中的ip地址和端口号为app应用的实际ip地址和ajp通信端口即可。红色字体部分是我们需要替换的地方,如下表。m119和m116分别是APP应用服务器的jvmRoute名称,见下节配置。#server 列表.mxxx是节点的名字,有多少个节点就设置几个 worker.list=appbalancer,m119,m116 #ajp13 端口号,在tomcat下server.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 修改Tomcat的Server.xml
这里以APP自带的应用服务器Tomcat为例,打开Tomcat/conf/server.xml文件,找到下面的配置,增加上下面的红色子图区域。jvmRoute需要与“appbalancer_jk.properties”文件中的worker名称一致。<!-- Define the top level container in our container hierarchy --> <Engine name="Catalina" defaultHost="localhost" jvmRoute="m116"> |
注意:
本章节以两个APP节点为例,需要分别打开两个APP的Tomcat/conf/server.xml文件,jvmRoute分别设置为“m116”和“m119”,每个APP的jvmRoute名称是不能相同的。
相关文章推荐
- 采用mod_jk模式配置Apache-2.2.4+Tomcat-7.0.32实现负载均衡(超详... 3ff8
- 采用mod_jk模式配置Apache-2.2.4+Tomcat-7.0.32实现负载均衡
- 采用mod_jk模式配置Apache-2.2.4+Tomcat-7.0.32实现负载均衡(超详...
- Tomcat+Apache+mod_JK实现集群配置/负载均衡
- windows下、apache 2.2 与tomcat 7 通过jk方式实现 负载均衡配置
- apache+inotify-tools+keepalived+lvs-NAT模式配置高可用负载均衡集群 推荐
- Apache + MOD_JK + TOMCAT实现集群和负载均衡配置指南
- apache+inotify-tools+keepalived+lvs-DR模式配置高可用负载均衡集群
- Tomcat的集群配置(Apache + mod_jk + tomcat来实现tomcat集群的负载均衡)
- Apache+Tomcat+JK配置win7(64)下的负载均衡
- Apache + MOD_JK + TOMCAT实现集群和负载均衡配置指南
- 基于apache的tomcat负载均衡和集群配置(基于mod_jk.so)
- apache安装、简单配置负载均衡和会话保持
- apache安装、简单配置负载均衡和会话保持
- Apache+Tomcat+JK配置win7(64)下的负载均衡
- 采用ajp代理模式配置Apache+tomcat实现负载均衡
- 【高可用HA】Apache (4) —— Mac下配置Apache Httpd负载均衡(Load Balancer)之mod_jk
- 采用ajp代理模式配置Apache+tomcat实现负载均衡
- 第一季:Tomcat 8迷情】 第7集 apache http server+tomcat+mod_jk在linux上的负载均衡配置
- Apache负载均衡配置(反向代理模式)