300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > linux下apache tomcat jk集群 apache tomcat 负载均衡集群和session复制 基于jk

linux下apache tomcat jk集群 apache tomcat 负载均衡集群和session复制 基于jk

时间:2024-05-07 23:48:12

相关推荐

linux下apache tomcat jk集群 apache tomcat 负载均衡集群和session复制 基于jk

apache服务器和tomcat的连接方法其实有三种:JK、http_proxy和ajp_proxy,本文主要介绍最为常见的JK。

基于centos5.5 linux下配置:

1.安装tomcat7、apache2.2.22服务器及版本对应的JK

这里需要注意的是JK版本必须与apache服务器版本号对应,对应的linux的编译的jk版本可以到网上搜索 mod_jk.so去下载

注意点:如果你安装的apache是2.0.63版本或者说是2.0.X版本做好选用 mod_jk-1.2.26-httpd-2.0.61.so,如果是最新版2.2.22,可以选用最用mod_jk-1.2.31-httpd-2.2.x.so,总之不成功的时候自己去试试so,我就实验好多,一开始机器装的是2.0.63的apache让人崩溃的老版本.

下载对应的so文件到apache下的modules目录中,apache_home表示apache服务器安装目录.

2.配置apache服务器

2.1 httpd.conf文件

apache_home目录下的conf/httpd.conf文件中添加

复杂配置:

LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.x.so

JkWorkersFile conf/workers.properties

JkMountFile conf/uriworkermap.properties #加载workers的请求处理分配文件 可以不需要

JkLogFile logs/mod_jk.log #指定jk的日志输出文件 可以不需要

JkLogLevel warn #指定日志级别可以不需要

JkMount /* lbcontroller #根据需要可以配置多个 设置apache分发器,/*表示apache将所有文件都由分发器lbcontroller 进行分发,你可以自行设置*.jsp,*.do等

uriworkermap.properties文件,内容如下

/*=lbcontroller #所有请求都由controller这个server处理

/jkstatus=status#所有包含jkstatus请求的都由status这个server处理

!/*.gif=lbcontroller#所有以.gif结尾的请求都不由controller这个server处理,以下几个都是一样的意思

!/*.jpg=lbcontroller

!/*.png=lbcontroller

!/*.css=lbcontroller

!/*.js=lbcontroller

!/*.htm=lbcontroller

!/*.html=lbcontroller

简单配置:apache文件加 Include “/usr/local/apache/conf/mod.conf”

在”/usr/local/apache/conf/目录下创建mod.conf内容:

LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.x.so

JkWorkersFile conf/workers.properties

#JkMount /*.jsp lbcontroller

#JkMount /*.do lbcontroller

JkMount /* lbcontroller #根据需要可以配置多个 设置apache分发器,/*表示apache将所有文件都由分发器lbcontroller 进行分发,你可以自行设置*.jsp,*.do等

2.2 workers.properties文件

在apache_home下conf目录中新建workers.properties文件,输入以下内容

Xml代码

worker.list=lbcontroller

#Tomcat1实例配置

worker.tomcat1.host=localhost #此处可以是你的ip地址

worker.tomcat1.port=8009

worker.tomcat1.type=ajp13

#分发权重 值越大负载越大

worker.tomcat1.lbfactor = 1

#Tomcat2实例配置

worker.tomcat2.host=localhost #此处可以是你的ip地址

worker.tomcat2.port=9009

worker.tomcat2.type=ajp13

#分发权重 值越大负载越大

worker.tomcat2.lbfactor = 1

#负载均衡分发控制器

worker.lbcontroller.type=lb

worker.lbcontroller.balance_workers=tomcat1,tomcat2

worker.lbcontroller.sticky_session=True

在这里 worker.list=lbcontroller,内容即为httpd.conf文件中的分发器名称。需要注意的内容是,tomcat实例名称

Xml代码:

worker.tomcat1.host=....

...

worker.tomcat2.host=....

...

在这里就是tomcat1和tomcat2必须与之后tomcat中的server.xml中jvmRoute值一致。

更多的work.properties可以参考:

worker.list=loadbalancer #定义负载均衡的名称

worker.loadbalancer.type=lb #定义负载均衡的类型,为lb

worker.loadbalancer.error_escalation_time=0 #切换错误状态时间

worker.loadbalancer.max_reply_timeouts=10

worker.loadbalancer.sticky_session=1#1代表为true,0代表为false。

#worker.loadbalancer.sticky_session_force=true

worker.loadbalancer.balance_workers=lb1,lb2 #负载均衡的工作者名称

worker.lb1.reference=worker.template #lb1参考worker.template工作模板

worker.lb1.host=localhost#lb1的ip地址

worker.lb1.port=8009 #lb1端口,这里是ajp端口,不是网站端口

worker.lb1.activation=A #A:active模式 D:sticky模式 S:不使用

worker.lb2.reference=worker.template

worker.lb2.host=localhost

worker.lb2.port=9009

worker.lb2.activation=A

worker.template.type=ajp13 #上面lb1,lb2参考下面的值worker.template,协议ajp13

worker.template.socket_connect_timeout=5000 #套接字连接超时为5000毫秒,默认为0

worker.template.socket_keepalive=true#开启保持为真,默认为false

worker.template.ping_mode=A #使用cping/cpong模式,有C,P,I,A四个模式。A全选

worker.template.ping_timeout=10000#探测cping/cpong超时间默认10000毫秒

worker.template.connection_pool_minsize=0 #连接池关闭最小时间

worker.template.connection_pool_timeout=600 #连接池600秒

worker.template.reply_timeout=300000#答复超时300000毫秒

worker.template.recovery_options=3#重试次数

3.tomcat集群配置:配置每个tomcat目录下的server.xml文件,具体修改内容如下

(责任编辑:最模板)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。