Managing Serviceguard Extension for SAP Version B.05.10, September 2010
Figure 1-3 Replicated Enqueue Clustering for ABAP and JAVA Instances
Enqueue Services also come as integral part of each ABAP DVEBMGS Central Instance. This
integrated version of the Enqueue Service is not able to utilize replication features. The DVEBMGS
Instance needs to be split up in a standard Dialog Instance and a ABAP System Central Service
Instance (ASCS).
The SGeSAP packaging of the ERS Instance provides startup and shutdown routines, failure
detection, split-brain prevention and quorum services to the mechanism. SGeSAP also delivers
an EMS (HP-UX Event Monitoring Service) that implements a cluster resource called
/applications/sap/enqor/<SID>ers<INSTNR> for each Replicated Enqueue in the cluster.
Monitoring requests can be created to regularly poll the status of each Replicated Enqueue.
NOTE: For SAP versions that were released before the ERS naming conventions got introduced,
the resource is also offered, but called /applications/sap/enqor/<SID>[a]scs.
The EMS monitor can be used to define a resource in the Serviceguard packages. This implements
a follow-and-push behavior for the two packages that include enqueue and its replication. As a
result, an automatism will make sure that enqueue and its replication server are never started
on the same node initially. Enqueue will not invalidate the replication accidentally by starting
on a non-replication node while replication is active elsewhere. It is possible to move the package
with the replication server to any free node in a multi-node cluster without a requirement to
reconfigure the enqueue package failover policy.
During failover of enqueue, its replication will be located dynamically and the enqueue restarts
on the currently active replication node. Enqueue synchronizes with the local replication server.
As a next step, the package with the replication service shuts down automatically and restarts
on a healthy node, if available. In case of a failover in a multi-node environment this implements
a self-healing capability for the replication function. Enqueue will failover to just any node from
the list of statically configured hosts if no replication package is running.
Two replication instances are required if Enqueue Replication Services are to be used for both
the JAVA stack and the ABAP stack. From this approach, several configuration options derive.
In most cases, it is the best practice to create separate packages for ASCS, SCS, and the two ERS
Follow-and-Push Clusters with Replicated Enqueue 17