In my previous post, I described SAP ASE with HA Option. SAP ASE with HA Option provides enhancements as compared to vendor failover solutions. In this post, I will present another Business Continuity solution which offers additional enhancements and features: SAP ASE Cluster Edition. SAP ASE Cluster Edition is a comprehensive High Availability solution. It was designed to overcome some limitations of other HA solutions (vendor failover, SAP ASE with HA option) and to provide additional Business Continuity features. I will dedicate several posts to SAP ASE Cluster Edition as there are interesting features to cover. I shall begin with a general overview of SAP ASE Cluster Edition.
Overview. SAP ASE Cluster Edition allows you to configure multiple Adaptive Servers to run as a shared-disk cluster. Multiple machines connect to a shared set of disks and a high-speed private interconnection (for example, a gigabit ethernet), allowing Adaptive Server to “scale” using multiple physical and logical hosts. In the cluster environment, each machine is referred to as a node and each Adaptive Server as an instance. Connected instances form a cluster, working together to manage a single set of databases on the shared disks. In each case, the instances present as a single system, with all data accessible from any instance. The first purpose of ASE CE is a High Availability solution and it must not be considered as a pure performance scale-out solution.
Main features of SAP ASE Cluster Edition are:
Failovers and Failbacks are near instantaneous
Failed over connections automatically re-routed
Architecture Supports up to 32 instances
No 3rd party cluster software required
Single system image view to applications data available to all instances
Workload manager configures cluster behavior to meet service level agreements
No Application logic changes required
Logical clusters; Can assist in application partitioning and routing; Reduces inter process communication overheads
Availability. SAP ASE has 2 editions: regular (or nonclustered) SAP ASE and SAP ASE Cluster Edition. It is the same database server engine with the same SQL features, but different executables. SAP ASE Cluster Edition has built-in High Availability features. SAP ASE Cluster Edition is generally available since SAP ASE version 15.0. It is available with SAP ASE 15.7 on following UNIX platforms:
SuSE Enterprise 11
Note that SAP ASE Cluster Edition is not available for following contexts:
Microsoft Windows platforms
SAP Business Suite.
Terms. SAP ASE Cluster Edition uses some terms previously defined for failover clusters (node, …). It has following additional specific terms.
Shared Disk Cluster: SAP ASE Cluster Edition is a shared disk cluster. Data is hosted on a shared-disk storage. All members of the shared-disk cluster are able to access the shared-disk storage simultaneously. This differs from failover database cluster solution where only one node can access data.
Instances: An instance is a database server. It is a member of the database cluster. Instances are usually hosted on different physical nodes.
Cluster coordinator. The cluster coordinator is a particular instance of the shared-disk cluster. It handles specific tasks related to membership management and recovery. Any instance attempting to join an existing cluster first contacts the cluster coordinator. There are no start-up parameters to indicate that a particular instance is the cluster coordinator.
Public network: Applications, clients connect to the cluster via a public network.
Private network: Members of the shared-disk cluster rely on a high speed private network for their operations. Private network is used by members of the shared-disk cluster to internally check the states of other nodes and to exchange cluster information (for instance locking information).
Quorum device: SAP ASE Cluster Edition has its own clusterware. It relies on a specific disk device named quorum device to hold cluster configuration, states of the instances and coordinate cluster instances. As shared data devices, the quorum device must be located on a shared disk storage in order to be accessible by all the nodes of the shared-disk cluster.
Logical cluster: SAP ASE Cluster Edition has the ability to group its instances into logical clusters. A logical cluster is a subdivision of the global cluster. For instance, assume that we have defined a shared disk-cluster with 4 instances (ASE1 to ASE4). We can define 2 logical clusters (LOGICAL_CLUSTER_HR and LOGICAL_CLUSTER_FINACE) and associate them to particular instances : LOGICAL_CLUSTER_HR with ASE1, ASE2 and LOGICAL_CLUSTER_FINANCE with ASE3, SASE4. The purpose of logical cluster feature is to route client applications to prefered instances.
Key components and normal operations. Diagram below depicts the main components of a shared-disk cluster architecture. It shows a shared-disk cluster named “mycluster” formed by 4 instances.
I will describe the components of each layer from the top to the bottom:
Application layer The shared-disk cluster appears as a single server for the clients. They connect to the shared-disk cluster and not to instances. The client applications connect to the shared-disk cluster via public network. Client applications can be regular Open Client or jConnect for JDBC clients. They must enable High Availability properties (CS_HAFAILOVER for Open Client or REQUEST_HA_SESSION for jConnect for JDBC) in order to be cluster-aware and able to failover.
Cluster layer Shared-disk cluster: The shared-disk cluster is named “mycluster”. It gathers 4 instances ASE1 – ASE4. Physical nodes: The shared-disk cluster “mycluster” spans on 4 physical nodes: node1 – node4 Instances: 4 database servers ASE1 – ASE4 form the shared-disk cluster “mycluster”. Private Networks: Redundant interconnected networks are used by “mycluster” shared-disk cluster to monitor its instances and to run cluster operations.
Persistence layer The persistence layer is the glue that keeps the cluster running. It relies on a shared storage. It is accessible via a SAN by all the members of the cluster. Quorum device: It includes information about the name of the cluster, the number of instances, the path to the directories containing directory services files, log files, master device. It records the states of all members of the cluster. Cluster databases: The databases hold actual data. They are managed by all the database servers instances.
Failure management. Diagram below depicts the behaviour in case of a failure of an instance or a node. ASE CE 15.5 and later is able to handle multiple simultaneous failures.
Here instance ASE1 (or physical node node1) is down. Following happens:
The shared-disk cluster “mycluster” service thread (cluster membership service) detects and confirms the failure of ASE1 and triggers a recovery.
Ongoing transactions are recovered by cluster coordinator or other instances.
Client connections are disconnected from instance ASE1
Client connections automatically reconnect to the shared-disk cluster “mycluster”
The shared-disk cluster “mycluster” is aware that ASE1 is down and re-routes the incoming connections to other instances of the shared-disk cluster.
Conclusion. We only scratched the surface of ASE Cluster Edition. In my next post I will present the installation setup and advanced features of shared-disk cluster like logical clusters and connections redirections.
 "jConnect for JDBC 7.0 Programmers Reference > Programming Information > Working with database s > Implementing high availability failover support" - Chapter 2: Programming Information /Implementing failover in jConnect http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc39001.0700/html/prjdbc0700/x39002.htm
Stay in the conversation by following SAP Services on SCN