1. Commands to create collective controller and collective members
server create testController
collective create testController --hostName=xx.xx.xx.xx --keystorePassword=controllerKSPassword --createConfigFile={SERVERS_DIR}/testController/collective-create-include.xml
server start testController
server create testMember1
collective join testMember1 --host=xx.xx.xx.xx --port=9443 --user=admin --password=admin --keystorePassword=memberKSPassword --createConfigFile={SERVERS_DIR}/testController/collective-create-include.xml
server start testMember1
2. Override the defaultHostName
<variable name="defaultHostName" value="localhost.localdomain" />
Please pay more attention to command line options:
collective help create
collective help join
Then I found:
bin/collective create testController --hostName=9.115.114.76 --keystorePassword=controllerKSPassword --createConfigFile={SERVERS_DIR}/testController/collective-create-include.xml
3. Caused by: javax.net.ssl.SSLHandshakeException: Client requested protocol SSLv3 not enabled or not supported
Exception stack:
[8/14/15 14:16:52:931 CST] 000000cf com.ibm.ws.channel.ssl.internal.SSLHandshakeErrorTracker E CWWKO0801E: Unable to initialize SSL connection. Unauthorized access was denied or security settings have expired. Exception is javax.net.ssl.SSLHandshakeException: Client requested protocol SSLv3 not enabled or not supported
at com.ibm.jsse2.ab.B(ab.java:86)
at com.ibm.jsse2.nc.b(nc.java:256)
at com.ibm.jsse2.nc.c(nc.java:331)
at com.ibm.jsse2.nc.wrap(nc.java:441)
at javax.net.ssl.SSLEngine.wrap(SSLEngine.java:39)
at com.ibm.ws.channel.ssl.internal.SSLUtils.handleHandshake(SSLUtils.java:660)
at com.ibm.ws.channel.ssl.internal.SSLConnectionLink.readyInbound(SSLConnectionLink.java:546)
at com.ibm.ws.channel.ssl.internal.SSLConnectionLink.ready(SSLConnectionLink.java:319)
at com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:174)
at com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:83)
at com.ibm.ws.tcpchannel.internal.WorkQueueManager.requestComplete(WorkQueueManager.java:504)
at com.ibm.ws.tcpchannel.internal.WorkQueueManager.attemptIO(WorkQueueManager.java:574)
at com.ibm.ws.tcpchannel.internal.WorkQueueManager.workerRun(WorkQueueManager.java:929)
at com.ibm.ws.tcpchannel.internal.WorkQueueManager$Worker.run(WorkQueueManager.java:1018)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1157)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:627)
at java.lang.Thread.run(Thread.java:809)
Caused by: javax.net.ssl.SSLHandshakeException: Client requested protocol SSLv3 not enabled or not supported
at com.ibm.jsse2.j.a(j.java:32)
at com.ibm.jsse2.nc.a(nc.java:450)
at com.ibm.jsse2.ab.a(ab.java:2)
at com.ibm.jsse2.ab.a(ab.java:388)
at com.ibm.jsse2.cb.a(cb.java:76)
at com.ibm.jsse2.cb.a(cb.java:831)
at com.ibm.jsse2.ab.t(ab.java:20)
at com.ibm.jsse2.ab$1.a(ab$1.java:4)
at com.ibm.jsse2.ab$1.run(ab$1.java:3)
at java.security.AccessController.doPrivileged(AccessController.java:452)
at com.ibm.jsse2.ab$c_.run(ab$c_.java:10)
at com.ibm.ws.channel.ssl.internal.SSLUtils.handleHandshake(SSLUtils.java:718)
... 11 more
.
My collective controller is on linux, and I wanted to add a collective member from my windows PC. The error occurred.
Solution:
Finally, I guess maybe due to JRE is different, so I updated my Windows PC JRE from IBM java 1.7.0 to IBM java 1.7.1. The collective join successful.
4. Import https website certificate to truststore
keytool -import -file website.cert -alias website -keystore usr/servers/member1/resources/security/trust.jks -storepass memberKSPassword