`
dengyin2000
  • 浏览: 1228622 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

使用apache2 jboss集群

阅读更多
环境:OS ubuntu, jdk 5.0,jboss4.0.4GA
1. 安装apache2。 sudo aptitude install apache2
2. 安装mod_jk , sudo aptitude install libapache2-mod-jk
3. 配置apache的loadblance
  • 修改/etc/apache2/httpd.conf 增加下面这段文字。
java 代码
  1. # Include mod_jk's specific configuration file    
  2. Include conf.d/mod-jk.conf   
  • 建立/etc/apache2/conf.d/mod-jk.conf,如果没有conf.d文件夹的话,就手工建。mod-jk.conf如下:
java 代码
  1. # Where to find workers.properties  
  2. JkWorkersFile conf/workers.properties  
  3.   
  4. # Where to put jk logs  
  5. JkLogFile logs/mod_jk.log  
  6.   
  7. # Set the jk log level [debug/error/info]  
  8. JkLogLevel info  
  9.   
  10. # Select the log format  
  11. JkLogStampFormat  "[%a %b %d %H:%M:%S %Y]"  
  12.   
  13. # JkOptions indicates to send SSK KEY SIZE  
  14. JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories  
  15.   
  16. # JkRequestLogFormat  
  17. JkRequestLogFormat "%w %V %T"  
  18.   
  19. # Mount your applications  
  20. JkMount /rss-server loadbalancer  
  21. JkMount /rss-server/* loadbalancer  
  22.   
  23. # You can use external file for mount points.  
  24. # It will be checked for updates each 60 seconds.  
  25. # The format of the file is: /url=worker  
  26. # /examples/*=loadbalancer  
  27. #JkMountFile conf/uriworkermap.properites  
  28.   
  29. # Add shared memory.  
  30. # This directive is present with 1.2.10 and  
  31. # later versions of mod_jk, and is needed for  
  32. for load balancing to work properly  
  33. JkShmFile logs/jk.shm  
  34.   
  35. # Add jkstatus for managing runtime data  
  36. <Location /jkstatus/>  
  37.     JkMount status  
  38.     Order deny,allow  
  39.     Deny from all  
  40.     Allow from 127.0.0.1  
  41. </Location>  
  42. #<VirtualHost *:443>  
  43. #    JkMount /cas loadbalancer  
  44. #    JkMount /cas/* loadbalancer  
  45. #</VirtualHost>  
上面定义works所放的文件地址,mount的网站(rss-server)。注意:这里我们定义了log文件的地址是logs/mod_jk.log,如果没有logs目录的话,需要建一个,要不到后面apache起不来了。浪费了相当一段时间在这里。
  • 建立conf/workers.properties文件,如下:
java 代码
  1. # Define list of workers that will be used  
  2. for mapping requests  
  3. # The configuration directives are valid  
  4. for the mod_jk version 1.2.18 and later  
  5. #  
  6. worker.list=loadbalancer,status  
  7.   
  8. # Define Node1  
  9. # modify the host as your host IP or DNS name.  
  10. worker.node1.port=8009  
  11. worker.node1.host=192.168.1.119  
  12. worker.node1.type=ajp13  
  13. worker.node1.lbfactor=1  
  14. # worker.node1.connection_pool_size=10 (1)  
  15.   
  16. # Define Node2  
  17. # modify the host as your host IP or DNS name.  
  18. worker.node2.port=8009  
  19. worker.node2.host= 192.168.1.102  
  20. worker.node2.type=ajp13  
  21. worker.node2.lbfactor=1  
  22. # worker.node1.connection_pool_size=10 (1)  
  23.   
  24. # Define Node3  
  25. # modify the host as your host IP or DNS name.  
  26. #worker.node3.port=8009  
  27. #worker.node3.host= 192.168.1.119  
  28. #worker.node3.type=ajp13  
  29. #worker.node3.lbfactor=1  
  30. # worker.node3.connection_pool_size=10 (1)  
  31.   
  32. # Load-balancing behaviour  
  33. worker.loadbalancer.type=lb  
  34. worker.loadbalancer.balanced_workers=node1,node2  
  35.   
  36. # Status worker for managing load balancer  
  37. worker.status.type=status  
我们定义了node1,node2用于
loadbalance。配置好ip和mod-jk的port。Apache端的配置就差不多了。
4. Jboss tomcat配置
  • 修改JBOSS_HOME/server/all/deploy/jbossweb-tomcat50.sar/server.xml 如下:
xml 代码
 
  1. <Engine name="jboss.web" defaultHost="localhost" jvmRoute="node1">  
  2. ... ...  
  3. </Engine>  
在另一台机上做同样的修改,替换node1成node2。
  • 修改JBOSS_HOME/server/all/deploy/jbossweb-tomcat50.sar/META-INF/jboss-service.xml 如下:
xml 代码
 
  1. <attribute name="UseJK">true</attribute>  
其他node的jboss也需要同样的修改。
  • 配置http session 状态复制。修改deploy/tc5-cluster.sar/META-INF/jboss-service.xml (这里已经是ok的。不需要再配置),让你的web application能够支持分布式,修改你的web.xml, 如下:
xml 代码
 
  1. <?xml version="1.0"?>   
  2. <web-app  xmlns="http://java.sun.com/xml/ns/j2ee"  
  3.           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
  4.           xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   
  5.                               http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"   
  6.           version="2.4">  
  7.     <distributable/>  
  8.     <!-- ... -->  
  9. </web-app>  
创建一个jboss-web.xml文件, 如下:
xml 代码
 
  1. <jboss-web>  
  2.     <replication-config>  
  3.         <replication-trigger>SET_AND_NON_PRIMITIVE_GET</replication-trigger>  
  4.         <replication-granularity>SESSION</replication-granularity>  
  5.     </replication-config>  
  6. </jboss-web>  
其中replication-trigger是指定哪些操作引发session的版本更新,它的取值有:

SET_AND_GET        
SET_AND_NON_PRIMITIVE_GET
SET

ok. 这样的话就基本完成了。
5. 其他设置
  • 改变cluster广播地址。$JBOSS_HOME/server/all/deploy/tc5-cluster.sar/META-INF/jboss-service.xml. 改变 "<UDP mcast_addr="${jboss.partition.udpGroup:230.1.2.7}""属性。
  • If you have multi network interfaces, you should specify which will be used as following

    ./run.sh -b 192.168.1.102

    Please make sure the multi-cast address of cas cluster should be unique, which means other cluster group's multi-cast address shouldn't be the same as cas cluster.

  • 分布式热部署(distributable hot deploy)

        在一个节点很多的cluster中,如果部署应用的时候必须 把程序文件拷贝到每个机器上的话,那实在太愚蠢了,幸好通过all启动的jboss自动支持分布式热部署。把支持cluster的应用(通常需要打包成 war文件),放到%jboss%\server\all\farm下,那么处于同一cluster中的其他节点会自动下载并且部署,jboss把这个称 为Farm deploy。

参考:Jboss cluster 文档
         http://www.huihoo.com/jboss/clustering/jboss-4.0.2.html
分享到:
评论

相关推荐

    apache+jboss集群参考

    apache+jboss集群参考,参考介绍集群实现办法

    apache jboss 集群问题

    apache jboss 集群问题,集群后出现异常,收集资料!

    Apache2.2+JBOSS 5 集群配置

    mod_jk是Apache的一个模块,用于Apache与Tomcat(JBOSS内部使用Tomcat的HTTP服务)之间的通信,它是实现JBOSS集群的关键组件。 4. **集群配置实例**: 实例中包括两个JBOSS节点,分别部署在两台不同的Ubuntu服务器...

    tomcat apache jboss集群分布

    【标题】:“Tomcat Apache JBoss集群分布” 在IT领域,服务器集群是提高应用程序可用性和可伸缩性的重要手段。本主题将深入探讨Tomcat、Apache和JBoss这三种流行的Java应用服务器如何实现集群分布,以及它们之间的...

    jboss集群部署详细资源

    集群的关键部分是Apache与JBoss之间的连接器,通常使用Apache Tomcat Connectors(mod_jk)实现AJP协议通信: 4. **Apache Tomcat Connectors安装**:解压缩`Apache-tomcat-connectors-1.2.28-src.tar.gz`,按照...

    CentOS下apache负载均衡与JBoss集群配置

    在本文中,我们将讨论在CentOS操作系统环境下,如何进行Apache负载均衡与JBoss集群的配置。负载均衡和集群配置是提高网站可用性、扩展性和性能的关键技术。通过这篇文章,我们会了解到详细的配置步骤,以及它们在...

    Linux下apache负载均衡及JBoss集群详细文档

    Linux下apache负载均衡及JBoss集群详细文档

    jboss集群技术介绍

    - JBoss集群使用优化过的网络通信机制,包括但不限于TCP/IP协议,来确保节点间的高效数据交换。 #### 四、设置集群 这一部分主要介绍了如何设置JBoss集群,包括配置文件的调整、环境变量的设置等。具体步骤可能...

    Apache Jboss/Tomcat集群(手稿)

    Apache JBoss/Tomcat集群是一种高可用性和可扩展性的架构,用于处理大量并发请求和分发负载。在本文档中,我们将深入探讨如何构建这样的集群。 首先,集群的基础架构包括一个前端Apache HTTP服务器,多个后端JBoss...

    Apache+Jboss(Tomcat)集群配置

    Apache+Jboss(Tomcat)集群配置是一种常见的高可用性和负载均衡解决方案,它通过在前端部署Apache服务器,中间层配置多个Jboss或Tomcat应用服务器,后端连接统一的数据库来实现系统的扩展性和稳定性。以下是配置这个...

    Apache与Jboss负载均衡教程

    主要内容涵盖JBoss的基本介绍、配置技巧、HTTPS的配置、Apache的安装与配置流程、JBoss集群的搭建以及粘性Session策略的应用。 - **JBoss简介**:JBoss是一款开源应用服务器,100%基于Java开发,与底层操作系统...

    apache负载均衡与JBOSS集群配置

    在Linux环境下实现Apache负载均衡和JBoss集群配置是一项涉及多个步骤的技术操作。下面将详细介绍这两个过程。 ### JDK安装与配置 1. **下载JDK**:首先需要下载1.5版本或以上的JDK安装包。根据版本不同,文件名也...

    inux下apache负载均衡与JBoss集群配

    本文将详细讲解如何在Linux下配置Apache负载均衡以及JBoss集群。 首先,我们来安装和配置JDK,这是运行JBoss的基础。下载对应版本的JDK(这里以1.5.0_19为例),将其放置在`usr`目录下,并赋予执行权限。然后通过...

    jboss5.1集群操作说明 apache2.2.4

    JBoss 5.1 是一个基于 Java 的应用服务器,提供了高度可扩展性和高可用性,支持集群部署。集群操作能够使多个 ...提供的压缩包文件 "jboss集群" 可能包含了示例配置文件或教程,可以帮助你更好地理解和实践这些概念。

    AIX配置Jboss集群之Apache文档

    在AIX操作系统上配置Jboss集群的过程中,Apache服务器扮演了重要的角色,用于负载均衡和管理应用服务器。以下是根据标题和描述中的内容详细说明的步骤: 首先,为了在AIX上安装Jboss集群所需的Apache组件,我们需要...

    JBoss集群技术介绍

    2. **JBoss集群架构** - **HA集群**:JBoss集群属于HA集群,旨在确保应用的高可用性。 - **两种架构**:客户端拦截器架构适用于C/S架构,而负载均衡器架构适用于B/S架构。本文主要讨论后者。 - **负载均衡器架构*...

    借助Apache2 mod_jk 1.2.x搭建JBOSS集群的方法

    ### 借助Apache2 mod_jk 1.2.x搭建JBOSS集群的方法 #### 知识点一:Apache2 mod_jk 1.2.x简介与安装配置 **Apache2 mod_jk 1.2.x**是Apache的一个模块,用于在Apache Web服务器和后端应用服务器(如JBOSS)之间...

Global site tag (gtag.js) - Google Analytics