WildFly8.1(JBoss)+mod_cluster(Apache)群集配置
继上次使用mod_jk传导Apache+JBoss群集配置后,。因为JBoss5.1启动太慢,于是我开始尝试用最新的WildFly8.1构造(WildFly那是,JBoss。在JBoss7之后改名)。
系统环境:
Windows 7 SP1(Windows Server 2003已測试。WildFly会有未知问题)
软件环境:
JDK 7+(一定要使用7以上,否则WildFly不支持)
WildFly 8.1.0(http://wildfly.org/downloads/)
mod_cluster 1.2.6(http://mod-cluster.jboss.org/downloads/1-2-6-Final-bin)
注意:mod_cluster有两个windows httpd+ssl的版本号下载。相应32位和64位
一、进行WildFly的domain模式配置
这里使用两个server节点进行配置:
master:192.168.0.10。
slave1:192.168.0.11(同理能够配置多个slave)
1、分别在两台server上解压WildFly 8.1.0;
2、master配置(下面未说明目录的xml均在domain/configuration下)
(1)改动domain.xml文件的<server-groups>节点:
进行server集群的server组设置。
注意:这里的profile和socket-binding-group配置,都使用full-ha模式(后期使用mod_cluster须要该模式)。
<server-groups>
<!-- 配置服务器组 -->
<server-group name="main-server-group" profile="full-ha">
<jvm name="default">
<heap size="64m" max-size="512m"/>
</jvm>
<socket-binding-group ref="full-ha-sockets"/>
</server-group>
</server-groups>
(2)改动domain.xml文件的<cluster-password>节点:
注意:这里有两种改动方式,方式一是设置username与password(用于集群间的通信安全),方式二是禁用掉安全策略。
<!-- <cluster-user>jms-user</cluster-user>
<cluster-password>jms-pass</cluster-password> -->
<security-enabled>false</security-enabled>
(3)改动host.xml文件的<interfaces>节点
替换全部的127.0.0.1为master的192.168.0.10。
<interfaces>
<interface name="management">
<inet-address value="${jboss.bind.address.management:192.168.0.10}"/>
</interface>
<interface name="public">
<inet-address value="${jboss.bind.address:192.168.0.10}"/>
</interface>
<interface name="unsecure">
<!-- Used for IIOP sockets in the standard configuration.
To secure JacORB you need to setup SSL -->
<inet-address value="${jboss.bind.address.unsecure:192.168.0.10}"/>
</interface>
</interfaces>
(4)改动host.xml文件的<servers>节点:
进行master中server实例的设置。
注意:group即为domain.xml中声明的服务器组。这里的group必须是在domain.xml文件里出现过的。
<servers>
<server name="master-one" group="main-server-group" auto-start="true">
<socket-bindings port-offset="0"/>
</server>
<server name="master-two" group="main-server-group" auto-start="true">
<socket-bindings port-offset="100"/>
</server>
</servers>
(5)使用bin/add-user.bat加入管理员账号:
加入一个用户,username为master。password为123123。设置的最后阶段会询问“Is this new user going to be used for one AS process to connect to another AS process?
”这里选no就可以。
注意:也能够使用其它名字的用户。
2、slave1配置(下面未说明目录的xml均在domain/configuration下)
(1)改动domain.xml文件的<server-groups>节点:
删除该配置中的所有服务器组,将该节点变为空节点就可以。
<server-groups />
(2)改动domain.xml文件的<cluster-password>节点:
这里的配置和master一致就可以。
<!-- <cluster-user>jms-user</cluster-user>
<cluster-password>jms-pass</cluster-password> -->
<security-enabled>false</security-enabled>
(3)备份原host.xml,复制一份host-slave.xml重命名为host.xml。
(4)改动新host.xml文件的<domain-controller>节点:
这里设置master地址192.168.0.10。
<domain-controller>
<remote host="${jboss.domain.master.address:192.168.0.10}" ... />
</domain-controller>
(5)改动新host.xml文件的<interfaces>节点:
替换全部的127.0.0.1为slave1的192.168.0.11。
<interfaces>
<interface name="management">
<inet-address value="${jboss.bind.address.management:192.168.0.11}"/>
</interface>
<interface name="public">
<inet-address value="${jboss.bind.address:192.168.0.11}"/>
</interface>
<interface name="unsecure">
<!-- Used for IIOP sockets in the standard configuration.
To secure JacORB you need to setup SSL -->
<inet-address value="${jboss.bind.address.unsecure:192.168.0.11}"/>
</interface>
</interfaces>
(6)改动新host.xml文件的<servers>节点:
进行slave1中服务器实例的设置。
<servers>
<server name="slave1-one" group="main-server-group" auto-start="true">
<socket-bindings port-offset="0"/>
</server>
<server name="slave1-two" group="main-server-group" auto-start="true">
<socket-bindings port-offset="1"/>
</server>
</servers>
(7)使用master的bin/add-user.bat为slave1加入账号:
加入一个用户,username为slave1。password为123123。最后的询问选择yes,之后便会出现一行文字,当中包含一段xml,类似<secret value="MTIzMTIz" />。须要记下来。
注意:该用户在master上。
(8)改动host.xml文件的<host>节点:
增加一个属性name="slave1"(这个name必须和上一步在master中创建的slave1的username一致)。
<host name="slave1" xmlns="urn:jboss:domain:2.1">
(9)改动host.xml文件的<server-identities>节点:
改动连接master的验证设置(加入slave1的用户时的xml)。
<server-identities>
<secret value="MTIzMTIz" />
</server-identities>
3、依照上述配置后,依次在master和slave1中,使用bin/domain.bat启动服务器。待所有启动后,訪问http://192.168.0.10:9990/,输入masterusername和password,进入界面,就可以查看服务器的执行状况。
二、进行mod_cluster的集群和负载均衡设置
1、在masterserver上解压mod_cluster,执行bin/installconf.bat,生成默认的配置文件;
2、改动conf/httpd.conf文件:
(1)Listen 8000改动为Listen 80(监听80port)
(2)#ServerName localhost:8000改动为ServerName 192.168.0.10:80(解除凝视,改动为master地址)
(3)改动最下方的<IfModule manager_module>节点(改动地址和訪问限制):
<IfModule manager_module>
Listen 192.168.0.10:6666
ManagerBalancerName mycluster
<VirtualHost 192.168.0.10:6666>
<Location />
Order deny,allow
Deny from all
Allow from all
</Location> KeepAliveTimeout 300
MaxKeepAliveRequests 0
AdvertiseFrequency 5
EnableMCPMReceive <Location /mod_cluster_manager>
SetHandler mod_cluster-manager
Order deny,allow
Deny from all
Allow from all
</Location> </VirtualHost>
</IfModule>
3、依次启动mod_cluster的httpdserver,masterserver的domain.bat,slave1server的domain.bat。訪问http://192.168.0.10:6666/mod_cluster_manager你可以看到一个群集的状态。
版权声明:本文博主原创文章,博客,未经同意不得转载。
WildFly8.1(JBoss)+mod_cluster(Apache)群集配置的更多相关文章
- JBOSS通过Apache负载均衡方法一:使用mod_jk
JBOSS通过Apache负载均衡方法一:使用mod_jk 本文第一.二节分别对Linux环境下前端使用Apache以及windows环境下前端使用IIS通过AJP协议和后端的JBOSS通信实现负 ...
- 【只需3步】源码手动安装Apache以及配置(亲测可行)
作者小波/QQ463431476欢迎转载! redhat6采用centos yum源. 第一步下载apache依赖的软件包并安装 安装 apr下载地址:http://apr.apache.org/do ...
- centos apache svn配置
单独安装svn服务: 安装svn软件 yum install subversion 创建根目录 mkdir -p /var/www/svn 创建版本库repos svnadmin create /va ...
- Apache+PHP 配置随笔
准备安装包 1:安装VC++ 2012(vcredist_x64,我这边服务器为64位) 2:Apache安装包,php安装包 安装后配置工作 1:安装Apache服务,配置环境变量 httpd -k ...
- Apache安装配置步骤
注释:这里以Linux 红帽商业版为例~~~~~~~纯手打啊 Apache安装配置步骤 准备:关闭其他虚拟设备 #/etc/init.d/libvirtd stop #/etc/init.d/xend ...
- Apache服务器安装配置
Apache服务器安装 1.Apache服务器安装 在Linux系统下,apache服务器的安装方式比较灵活,可以使用二进制包安装,比如:rpm包.deb包.已编译好的包.也可以简单的使用y ...
- JBoss的安装与配置(对应eclipse配置)【转】
安装JBoss纯粹是目的就是学习EJB3...至少现在是这样的 EJB需要运行在EJB容器中.每个J2EE应用服务器都含有EJB容器和Web容器.这样,既支持运行EJB,也可以运行Web应用 目前EJ ...
- Apache安全配置方案
Apache安全配置方案 from:http://drops.wooyun.org/%e8%bf%90%e7%bb%b4%e5%ae%89%e5%85%a8/2727 apache的一些配置主要是通过 ...
- JBoss部署项目log4j配置会造成死锁问题,浏览器访问一直pending状态
今天将项目部署到JBoss服务器上,部署成功后,浏览器访问页面一直在等待响应. 查了很长时间,最后在服务器上通过jstack pid命令查看Java堆栈信息,发现了有两个线程死锁. 看到造成死锁的原因 ...
随机推荐
- (七)boost库之单例类
(七)boost库之单例类 一.boost.serialzation的单件实现 单例模式是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例类的特殊类.通过单例模式可以保证系统中一个类只有一 ...
- C#代码 json类
using System; using System.Collections.Generic; using System.Collections; using System.Text; using S ...
- Ubuntu 14.04 安装桌面
1.Ctrl+alt+T启动终端或者Ctrl+alt+F1登录字符界面,执行以下命令重新安装Ubuntu unity(Ubuntu基本桌面): sudo apt-get install ubuntu- ...
- HBase 1、HBase介绍和工作原理
HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”.就像Bigtable利用了Google文件 ...
- wxpython 拖放
拖放对用户是非常直观.它在许多桌面应用程序,用户可以复制或只需用鼠标拖动和删除另一个窗口中移动对象从一个窗口到另一个中. 拖放操作包括以下步骤 - 声明拖放目标 创建数据对象 创建 wx.DropSo ...
- 呵呵!手把手带你在 IIS 上执行 Python
公司的站点让我头痛死了.在众多前辈高手的带领下.一大堆的 CMD 在站点里执行得好好地,黑客攻击也好好地.仅仅有站点和我不好好地,我快累死了,站点快挂了.. . 为了解决问题.我想到了 Python ...
- T-SQL事务
事务 订火车票的时候,下一个订单,这个订单中,包含多个购买信息,要么全部执行,要么全部不执行,合作事务就是来处理这种模型的一种机制. --关键字:transaction 或 tran 简写形式 --开 ...
- Nodejs随笔(二):像可执行shell脚本一样,运行node 脚本!
在每次编写nodejs脚本的时候,只需在程序的开头加上如下代码(写过shell脚本的人应该很熟悉): #!/usr/local/bin/node 同时,修改文件权限为可执行: mesogene@mes ...
- spark JavaDirectKafkaWordCount 例子分析
spark JavaDirectKafkaWordCount 例子分析: 1. KafkaUtils.createDirectStream( jssc, String.class, String.c ...
- HDU 2473 - Junk-Mail Filter ,并查集的删点
Problem Description Recognizing junk mails is a tough task. The method used here consists of two ste ...