JBoss5.1+apache2.2.14_mod_jk集群

一、环境

负载均衡器:

外网IP:67.208.221.120

Apache2.2.14

mod_jk 1.28

Game Server 01

内网IP:192.168.16.100

Jboss 5.1.0GA

JDK1.6.17 X64

Game Server 01

内网IP:192.168.16.100

Jboss 5.1.0GA

JDK1.6.17 X64

负载均衡器配置

一、下载apache和mod_jk

# mkdir /usr/local/src/tarbag

# mkdir /usr/local/src/software

# cd /usr/local/src/tarbag

# wget http://

# wget http://

二、配置编译安装apache2.2.14

# tar -xzvf httpd-2.2.14.tar.gz -C ../software/

# cd ../software/httpd-2.2.14

# ./configure --prefix=/usr/local/apache2 --enable-so --enable-headers --enable-rewrite --disable-status --disable-userdir --disable-cgid

# make

# make install

三、扩展apache模块mod_jk

# cd /usr/local/src/tarbag

# mv mod_jk-1.2.28-httpd-2.2.X.so /usr/local/apache2/modules/mod_jk.so

# chmod 755 /usr/local/apache2/modules/mod_jk.So

# cd /usr/local/apache2/conf

# vi httpd.conf

//末尾加上如下内容

Include conf/mod_jk.conf

# vi uriworkermap.properties

//加上如下内容

LoadModule jk_module modules/mod_jk.so

JkWorkersFile conf/workers.properties

JkLogFile logs/mod_jk.log

JkLogLevel info

JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

JkRequestLogFormat "%w %V %T"

JkMountFile conf/uriworkermap.properties

JkShmFile logs/jk.shm

JkMount status

Order deny,allow

Deny from all

Allow from 127.0.0.1

# vi uriworkermap.properties

//添加以下内容

/Garden=loadbalancer

/Garden/*=loadbalancer

/jmx-console=loadbalancer

/jmx-console/*=loadbalancer

/web-console=loadbalancer

/web-console/*=loadbalancer

# vi mod_jk.conf

//加上以下内容

worker.list=loadbalancer,status

worker.node1.port=8009

worker.node1.host=192.168.16.100

worker.node1.type=ajp13

worker.node1.lbfactor=1

worker.node1.cachesize=10

worker.node2.port=8009

worker.node2.host= 192.168.16.101

worker.node2.type=ajp13

worker.node2.lbfactor=1

worker.node2.cachesize=10

worker.loadbalancer.type=lb

worker.loadbalancer.balance_workers=node1,node2

worker.loadbalancer.sticky_session=1

worker.status.type=status

四、安装jboss

.....略,详见766jboss安装

五、配置第一台jboss使用mod_jk

# /usr/local/jboss/server/all/deploy/jbossweb.sar/server.xml

找到:

改为:

# vi /usr/local/jboss/server/all/deployers/jbossweb.deployer/META-INF/war-deployers-jboss-beans.xml

找到:

false

//需要去掉旁边的注释

改为:

true

//其他

//快照模式,INSTANT只要有修改就立即复制session到其他主机,设置为INSTANT下面一项也失效

INSTANT

//当snapshotMode快照模式设置成Interval,那么下面生效,并且每隔1000ms复制一次快照

1000

//复制粒度,有session何attribute,一般就用SESSION

SESSION

//复制触发,设置成如下就可以

SET_AND_NON_PRIMITIVE_GET

true

六、配置应用程序

修改Garden应用程序的web.Xml

在应用程序的web.xml的 段中增加 。

在Garden下面添加jboss-web.Xml

输入以下内容



SET_AND_NON_PRIMITIVE_GET
SESSION

七、发布应用程序

将应用程序Garden.War放到/usr/local/jboss/server/all/farm下。只要一台有这个文件,其他主机会制动热部署这个文件。如果war文件在当前服务器上部署不成功,有可能导致不会热部署到其他服务器上

八、第二台jboss上修改ServerPeerID,节点ID

# vi /usr/local/jboss/server/all/deploy/messaging/messaging-service.Xml

找到

${jboss.messaging.ServerPeerID:0}

改为:

${jboss.messaging.ServerPeerID:1}

//所有的ServerPeerID必须不同,且都需要为整数,否则启动报错

九、启动

# nohup /usr/local/jboss/bin/run.sh -c all -b 192.168.1.100 -g GardenJBoss &

....待续

你可能感兴趣的:(JBoss5.1+apache2.2.14_mod_jk集群)