I have four Windows servers (2012 R2 Standard) and Tomcat (8.0.32) runs on each of them. The servers are fronted with a Kemp LoadMaster for load balancing. Currently, the load balancer and four web servers work correctly, but without clustering.
I hope to use the four web servers to form a clustering. I have to say this. I googled and googled and found tons of tutorials about using Unix or Apache web server as frontend load balance. I am unable to find a single link with step-by-step instructions about how to configure a few Windows servers for Tomcat clustering that does not use Apache web server as frontend load balance.
According to Apache doc (https://tomcat.apache.org/tomcat-8.0-doc/cluster-howto.html), I added this to server.xml to each Tomcat, but it is not working.
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
channelSendOptions="8">
<Manager className="org.apache.catalina.ha.session.DeltaManager"
expireSessionsOnShutdown="false"
notifyListenersOnReplication="true"/>
<Channel className="org.apache.catalina.tribes.group.GroupChannel">
<Membership className="org.apache.catalina.tribes.membership.McastService"
address="228.0.0.4"
port="45564"
frequency="500"
dropTime="3000"/>
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
address="auto"
port="4000"
autoBind="100"
selectorTimeout="5000"
maxThreads="6"/>
<Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
<Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
</Sender>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
</Channel>
<Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
filter=""/>
<Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
<Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
<ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
</Cluster>
I hope to know what specific things I need to do on these four Windows web servers (or may be the load balancer too?) to make the clustering happen.
Any pointer or input is REALLY appreciated. I really mean it. Thank you.