Hi all,

I have to use Heartbeat with Pacemaker for High Availability between 2 Tomcat 
5.5 servers under Linux RedHat 5.4.
The first server is active, the other one is passive. The master is called 
servappli01, with IP address 186.20.100.81, the slave is called servappli02, 
with IP address 186.20.100.82.
I configured a virtual IP 186.20.100.83. Each Tomcat is not launched when 
server is started, this is Heartbeat which starts Tomcat when it's running.
All seem to be OK, each server see the other as active, and the crm_mon command 
shows this below :

============
Last updated: Thu Nov 17 19:03:34 2011
Stack: Heartbeat
Current DC: servappli01 (bf8e9a46-8691-4838-82d9-942a13aeedca) - partition with 
quorum
Version: 1.0.11-1554a83db0d3c3e546cfd3aaff6af1184f79ee87
2 Nodes configured, 2 expected votes
2 Resources configured.
============

Online: [ servappli01 servappli02 ]

 Clone Set: ClusterIPClone (unique)
     ClusterIP:0        (ocf::heartbeat:IPaddr2):       Started servappli01
     ClusterIP:1        (ocf::heartbeat:IPaddr2):       Started servappli02
 Clone Set: TomcatClone (unique)
     Tomcat:0   (ocf::heartbeat:tomcat):        Started servappli01
     Tomcat:1   (ocf::heartbeat:tomcat):        Started servappli02


The 2 Tomcat servers as identical, and the same webapps are deployed on each 
server in order to be able to access webapps on the other server if one is down.
By default, requests from clients are processed by the first server because 
it's the master.
My problem is that when I crash the Tomcat on the first server, requests from 
clients are not redirected to the second server. For a while, requests are not 
processed, then Heartbeat restarts Tomcat itself and requests are processed 
again by the first server.
Requests are never forwarded to the second Tomcat if the first is down.

Here is my configuration :

ha.cf file (the same on each server) :

crm             respawn
logfacility     local0
logfile         /var/log/ha-log
debugfile       /var/log/ha-debug
warntime        10
deadtime        20
initdead        120
keepalive       2
autojoin        none
node            servappli01
node            servappli02
ucast           eth0 186.20.100.81 # ignored by node1 (owner of ip)
ucast           eth0 186.20.100.82 # ignored by node2 (owner of ip)

cib.xml file (the same on each server) :

<?xml version="1.0" ?>
<cib admin_epoch="0" crm_feature_set="3.0.1" 
dc-uuid="bf8e9a46-8691-4838-82d9-942a13aeedca" epoch="127" have-quorum="1" 
num_updates="51" validate-with="pacemaker-1.0">
  <configuration>
    <crm_config>
      <cluster_property_set id="cib-bootstrap-options">
        <nvpair id="cib-bootstrap-options-dc-version" name="dc-version" 
value="1.0.11-1554a83db0d3c3e546cfd3aaff6af1184f79ee87"/>
        <nvpair id="cib-bootstrap-options-cluster-infrastructure" 
name="cluster-infrastructure" value="Heartbeat"/>
        <nvpair id="cib-bootstrap-options-expected-quorum-votes" 
name="expected-quorum-votes" value="2"/>
        <nvpair id="cib-bootstrap-options-no-quorum-policy" 
name="no-quorum-policy" value="ignore"/>
        <nvpair id="cib-bootstrap-options-stonith-enabled" 
name="stonith-enabled" value="false"/>
      </cluster_property_set>
    </crm_config>
    <nodes>
      <node id="489a0305-862a-4280-bce5-6defa329df3f" type="normal" 
uname="servappli01"/>
      <node id="bf8e9a46-8691-4838-82d9-942a13aeedca" type="normal" 
uname="servappli02"/>
    </nodes>
    <resources>
      <clone id="TomcatClone">
        <meta_attributes id="TomcatClone-meta_attributes">
          <nvpair id="TomcatClone-meta_attributes-globally-unique" 
name="globally-unique" value="true"/>
        </meta_attributes>
        <primitive class="ocf" id="Tomcat" provider="heartbeat" type="tomcat">
          <instance_attributes id="Tomcat-instance_attributes">
            <nvpair id="Tomcat-instance_attributes-tomcat_name" 
name="tomcat_name" value="TomcatSBNG"/>
            <nvpair id="Tomcat-instance_attributes-tomcat_user" 
name="tomcat_user" value="tomcat"/>
            <nvpair id="Tomcat-instance_attributes-statusurl" name="statusurl" 
value="http://127.0.0.1:8080/mas-security/Security"/>
            <nvpair id="Tomcat-instance_attributes-java_home" name="java_home" 
value="/usr/java/default"/>
            <nvpair id="Tomcat-instance_attributes-catalina_home" 
name="catalina_home" value="/usr/share/tomcat55"/>
          </instance_attributes>
          <operations>
            <op id="Tomcat-monitor-30s" interval="30s" name="monitor" 
timeout="60s"/>
            <op id="Tomcat-start-0" interval="0" name="start" timeout="120s"/>
            <op id="Tomcat-stop-0" interval="0" name="stop" timeout="120s"/>
          </operations>
        </primitive>
      </clone>
      <clone id="ClusterIPClone">
        <meta_attributes id="ClusterIPClone-meta_attributes">
          <nvpair id="ClusterIPClone-meta_attributes-globally-unique" 
name="globally-unique" value="true"/>
        </meta_attributes>
        <primitive class="ocf" id="ClusterIP" provider="heartbeat" 
type="IPaddr2">
          <instance_attributes id="ClusterIP-instance_attributes">
            <nvpair id="ClusterIP-instance_attributes-ip" name="ip" 
value="186.20.100.83"/>
            <nvpair id="ClusterIP-instance_attributes-cidr_netmask" 
name="cidr_netmask" value="24"/>
            <nvpair id="ClusterIP-instance_attributes-clusterip_hash" 
name="clusterip_hash" value="sourceip"/>
          </instance_attributes>
          <operations>
            <op id="ClusterIP-monitor-30s" interval="30s" name="monitor"/>
          </operations>
        </primitive>
      </clone>
    </resources>
    <constraints>
      <rsc_colocation id="ip-with-tomcat" rsc="ClusterIPClone" score="INFINITY" 
with-rsc="TomcatClone"/>
      <rsc_order first="TomcatClone" id="ip-after-tomcat" score="INFINITY" 
then="ClusterIPClone"/>
    </constraints>
    <rsc_defaults>
      <meta_attributes id="rsc-options">
        <nvpair id="rsc-options-resource-stickiness" name="resource-stickiness" 
value="100"/>
      </meta_attributes>
    </rsc_defaults>
  </configuration>
</cib>

Another strange thing is that the VIP never appears in the result of ifconfig 
command...
Can somebody help me please ?
I guess there's is something wrong but I don't know what !
Thanx

Mathieu
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems

Reply via email to