Apache JBoss配置多实例 负载均衡_第1页
Apache JBoss配置多实例 负载均衡_第2页
Apache JBoss配置多实例 负载均衡_第3页
Apache JBoss配置多实例 负载均衡_第4页
Apache JBoss配置多实例 负载均衡_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Apache+JBoss配置多实例+负载均衡(mod_jk实现)最近需要使用JBoss配置项目的负载均衡(最好能有多实例保证并发量),经过1整天的搜索和实践,最终终于成功,在此记录下来,以便他人和自己日后参考。系统环境:Windows Server 2003软件环境:JDK 7 (Update 55VC9 (Apache httpd 2.2.29 (JBoss-5.1.0.GA (/downloads注意:尽量使用规定版本的程序,尤其是JBoss(版本差异太大),否则可能会出现未知的错误一、安装JDK及环境变量配置(略)二、解压httpd服务器(进

2、行初始化即可)注意:该httpd解压后,需要手动修改conf/httpd.conf配置文件中的部分内容(如:ServerName、DocumentRoot等)三、解压JBoss服务器(暂时不配置)四、配置httpd服务器1、下载mod_jk.so模块(/download-connectors.cgi),使用对应httpd服务器的版本文件,本人这里使用的是mod_jk-1.2.31-httpd-2.2.3.so(/dist/tomcat/tomcat-connectors/jk/binaries/win

3、32/jk-1.2.31/)2、为httpd服务器添加mod_jk模块,将mod_jk-1.2.31-httpd-2.2.3.so改名为mod_jk.so,放入modules文件夹下即可3、在conf文件夹下添加文件mod_jk.conf(主要是载入刚刚的mod_jk模块,并做配置):# Load mod_jk module# Specify the filename of the mod_jk libLoadModule jk_module modules/mod_jk.so# Where to find pertiesJkWorkersFile conf/worker

4、perties# Where to put jk logsJkLogFile logs/mod_jk.log# Set the jk log level debug/error/infoJkLogLevel info# Select the log formatJkLogStampFormat "%a %b %d %H:%M:%S %Y"# JkOptions indicates to send SSK KEY SIZEJkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories# JkReques

5、tLogFormatJkRequestLogFormat "%w %V %T"# Mount your applicationsJkMount /application/* loadbalancer# You can use external file for mount points.# It will be checked for updates each 60 seconds.# The format of the file is: /url=worker# /examples/*=loadbalancerJkMountFile conf/uriworkermap.p

6、roperties# Add shared memory.# This directive is present with 1.2.10 and# later versions of mod_jk, and is needed for# for load balancing to work properlyJkShmFile logs/jk.shm# Add jkstatus for managing runtime dataJkMount statusOrder deny,allowDeny from allAllow from 4、修改conf/httpd.conf,在最

7、下方加入如下配置(意思即为引用mod_jk.conf设置文件):#JBoss confInclude conf/mod_jk.conf5、在conf文件夹下增加perties(负载均衡的访问路径配置,在mod_jk.conf提及):/*=loadbalancer6、在conf文件夹下增加perties(负载均衡的服务器节点配置,在mod_jk.conf提及):注意:worker.node1.port和worker.node2.port是服务器的ajp端口,这里两个节点的端口相隔100,是因为后边在JBoss设置中,多实例的端口偏移量设置了1

8、00。# Define list of workers that will be used for mapping requestsworker.list=loadbalancer,status# Load-balancing behaviourworker.loadbalancer.type=lbworker.loadbalancer.balance_workers=node1,node2worker.loadbalancer.sticky_session=1# Status worker for managing load balancerworker.status.type=status

9、# Node1worker.node1.port=8009worker.node1.host=worker.node1.type=ajp13worker.node1.lbfactor=1worker.node1.cachesize=10# Node2worker.node2.port=8109worker.node2.host=worker.node2.type=ajp13worker.node2.lbfactor=1worker.node2.cachesize=10五、配置多实例的JBoss服务器由于是多实例(多进程,不同端口),所以我们需要使用两份一样的

10、部署应用,我们先将JBoss解压后的server/all文件夹复制两份,分别为server/node1文件夹和server/node2文件夹。两个文件夹即为两个实例启动的部署应用,现在开始详细的配置:1、node1与node2类似的配置:(1)修改server/node1(node2/deploy/jbossweb.sar/server.xml配置文件:A、两个$jboss.bind.address均替换为$(出于安全性考虑,JBoss会绑定服务器IP,设置为将解除这一绑定的限制)B、将node1中修改为jvmRoute="node1" >

11、 , node2 做对应修改(表示不同的节点,节点名称需要和 httpd 服务器配置 perties 文件中的节点名称一致) (2)修改server/node1(node2/deploy/messaging/messaging-service.xml配置文件:A、将node1中$jboss.messaging.ServerPeerID:0的数值0修改为1,node2中对应位置修改为2(该数字表示集群时的id,不可重复)(3)修改server/node1(node2/deployers/jbossweb.deployer/META-INF/war-deployers-jbo

12、ss-beans.xml文件:A、将如下四段解除配置,并修改false为true,修改结果(用于session同步):truetrue-1 -1 (4)修改server/node1(node2/conf/bootstrap/profile.xml配置文件(在parameter标签处加入class="java.io.File",避免启动时报错):class="java.io.File" > .2、node2的不同配置:(1)修改server/node2/conf/bindingservice.beans/META-INF/bindings-jboss

13、-beans.xml配置文件:A、JBoss启动的端口设置偏移量,由0修改为100(这里就是httpd服务器中ajp端口间隔100的原因):.100.六、项目中session同步说明:1、上述的JBoss已经提及了session的同步,并修改了war-deployers-jboss-beans.xml的配置;2、修改项目自身的配置(以server/node1(node2/deploy/ROOT.war为例)(1)修改WEB-INF/web.xml文件,加入 (一定要注意顺序,顺序错误启动会报错的)Welcome to JBoss Welcome to JBossStatus Servlet o

14、rg.jboss.web.tomcat.service.StatusServlet Status Servlet /status (2)在WEB-INF文件夹下添加jboss-web.xml配置文件(JBoss的特殊配置,同web.xml一同加载)/ SET_AND_NON_PRIMITIVE_GET SESSION True 七、测试1、分别在server/node1(node2/deploy/ROOT.war下添加test文件夹,放入测试jsp(附件有下载);2、启动Apache httpd服务器(通过命令或制作Windows服务均可);3、启动两个JBoss实例:(1)在JBoss的bin文件夹下,添加两个bat批处理(启动设置好的node1和node2两个JBoss实例):run-node1.bat,文件内容(右键用记事本编辑即可):run.bat -c node1run-node2.bat,文件内容(右键用记事本编辑即可):run.bat -c node2(2)依次双击即可启动两个JBoss实例(启动较慢,需等待node1启动后再启动node2)4、访问测试页面:(1)启动浏览器1,访问http:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论