继上次使用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你可以看到一个群集的状态。
版权声明:本文博主原创文章,博客,未经同意不得转载。