问题回顾
需要在一台机器上部署多个JBoss中间件,但是各个JBoss之间可能存在端口冲突而导致无法启动。
解决思路
其中一个JBoss的端口保持不变,其他的JBoss通过修改端口使之不冲突。
实施步骤
对于需要修改的JBoss中间件来说,可以通过修改关键的端口值来达到相关的目的,需要修改的端口值为(各个端口前加1):
1. $JBoss_home/server/default/deploy/ejb3.deployer/META-INF/jboss-service.xml 修改3873端口的值;
1:
2:
3: "org.jboss.remoting.transport.Connector"
4: name="jboss.remoting:type=Connector,name=DefaultEjb3Connector,handler=ejb3">
5: jboss.aop:service=AspectDeployer
6: "InvokerLocator">socket://${jboss.bind.address}:13873
7: "Configuration">
8:
9: "AOP">org.jboss.aspects.remoting.AOPRemotingInvocationHandler
10:
11:
12:
2. $JBoss_home/server/default/deploy/jboss-web.deployer/server.xml 修改8080(不要和其他的JBoss冲突,该端口即为页面访问的端口),8009,443端口值。
1: "8080" address="${jboss.bind.address}"
2: maxThreads="250" maxHttpHeaderSize="8192"
3: emptySessionPath="true" protocol="HTTP/1.1"
4: enableLookups="false" redirectPort="443" acceptCount="100"
5: connectionTimeout="20000" disableUploadTimeout="true" />
6:
7: "1443" protocol="HTTP/1.1" SSLEnabled="true"
8: maxThreads="150" scheme="https" secure="true"
9: clientAuth="false"
10: toreFile="${jboss.server.home.dir}/conf/sales.kingsoft.com_keystore"
11: keystorePass="passrhce2009card"
12: Protocol="TLS" />
13:
14: "18009" address="${jboss.bind.address}" protocol="AJP/1.3"
15: emptySessionPath="true" enableLookups="false" redirectPort="443" />
16:
17: "jboss.web" defaultHost="localhost">
18:
3. $JBoss_home/server/default/conf/jboss-service.xml 修改8083,1098,1099,4444,4445,4446端口值
可以使用查找,找到相关的端口值,进行修改
4. $JBoss_home/server/default/conf/jboss-minimal.xml 修改1099端口值,与3中保持一致。
1: "Port">11099
2:3: RMI service bind address. Empty == all addresses
4: -->
5. $JBoss_home/server/default/deploy/jms/uil2-service.xml 修改8093端口值。
1: "ServerBindPort">18093
2: