Introduction to Cluster APIs

A System i® cluster is defined as a collection of complete systems that work together to provide a single, unified computing capability. A cluster is identified by a 10-character name. The cluster is comprised of one or more cluster nodes. A cluster node is a system that is a member of a cluster. Each cluster node is identified by an 8-character cluster node identifier that is associated with a set of IP addresses representing a system.

Cluster communications running over IP provides the communications path between cluster services on each node in the cluster. Cluster Resource Services requires that the loopback IP address on each node be active. The set of cluster nodes that have been configured for the cluster is referred to as the cluster membership list.

Whenever communication with a node is lost but node or cluster resource services failure cannot be guaranteed, a cluster becomes partitioned. A cluster may be separated into multiple partitions. While partitioned, some cluster operations may be restricted.

High availability through clustering is accomplished through the implementation of resilient resources. A resilient resource is any system resource supported by clustering that is available on more than one node in the cluster. If a node in the cluster that is the primary access point for a particular set of resilient resources should fail, another node that is defined to be the backup for that set of resources will become the access point. The definition of the relationship between the nodes associated with a set of resilient resources is found in the cluster resource group (CRG) object. Cluster resource groups are distributed and coordinated across the nodes in the cluster. Cluster resource groups contain a recovery domain.

Cluster Administrative Domain will allow a cluster administrator to maintain a consistent operational environment across the cluster or a subset of the cluster.


General Information Applicable to Cluster APIs

The following parameters on Cluster APIs must be valid object names and uppercase only:

To qualify as a valid object name, the first character must be alphabetic (A-Z) or one of the special characters, $, @, or #. The remaining characters are the same as the first character, but can also include 0 through 9, underscores and periods.


Example Source Code

Example control language command source has been provided in the base operating system option 7 (Example Tools Library, QUSRTOOL). These commands interface to the Cluster Resource Services APIs. See member, TCSTINFO, in file QUSRTOOL/QATTINFO for more information. IBM® i-supported CL commands can be found by doing "GO CMDCLU" from the command entry screen.

In addition, example application cluster resource group exit program source code can be found in the TCSTAPPEXT and TCSTDTAARA members in file QUSRTOOL/QATTSYSC.

Sample program source has been included which will create the QCSTHAAPPI, QCSTHAAPPO data areas and the QACSTOSDS object specifier file. See member TCSTDTAEXT in QUSRTOOL/QATTSYSC for the source. This is not a complete program as written. Data specific to the application must be added since each application has different resiliency requirements. See System i High Availability and ClustersLink outside information center for information about making applications highly available and cluster-proven applications. This website also contains more information about QCSTHAAPI data area, QCSTHAAPPO data area, and QACSTOSDS object specifier file.


terminology

Access point. For primary-backup model, the primary point of access for a resilient resource. If that resource fails, one of the backup resources will become the primary access point. For peer model, the point of access for a resource. All nodes of type peer, are a point of access for the resource.

Administrative domain. Monitors and synchronizes changes to selected resources within a cluster. Cluster administrative domain provides easier management and synchronization of attributes for resources that are shared within a cluster, such as environment variable or user profiles.

Application takeover IP address. A floating address that is to be associated with an application.

Clustered hash table. Non-persistent data that can be shared and replicated between cluster nodes using the Clustered Hash Table APIs.

Cluster resource group exit program. A program which handles action codes that are passed to it.

Cluster resource. A resource that is available on more than one cluster node.

Cluster resource group. A grouping of cluster resources. The group describes a recovery domain and supplies the name of the cluster resource group exit program that manages the movement of an access point.

Device domain. A subset of nodes in a cluster grouped together to share physical hardware resources or the logical resources associated with the physical hardware.

Partition. Happens when you lose contact between one or more nodes in the cluster and a failure of lost nodes cannot be confirmed.

Peer model. Cluster resource groups of this model define nodes in the recovery domain with a specific role of either peer or replicate. The peer nodes are available to be the access point for the cluster resource groupbut .

Primary-backup model. Cluster resource groups of this model define nodes in the recovery domain with a specific role of either primary, backup or replicate. The primary and backup nodes are available to be the access point for the cluster resource group.

Recovery domain. A subset of nodes in a cluster grouped together to provide availability for one or more resources. A domain represents the nodes of the cluster where a cluster resource exists. See Cluster Resource Groups APIs for more information.

Resilient resource. Resources that are recoverable by Cluster Resource Services. Three types of system resources that can be resilient are (1) objects being replicated between nodes, (2) applications using a takeover IP address, which can be switched from one node to another, and (3) hardware devices which can be switched from one node to another.

Server takeover IP address. A takeover IP address for servers associated with the relational database name in the device description for an auxiliary storage pool.

Singleton cluster. A one node cluster or a cluster with only one active node.


[ Back to top | Cluster APIs | APIs by category ]