3.2.4.4 Cluster Nodes, Cluster Networks, and Cluster Network Interfaces

In order to operate on a cluster node, cluster network, or cluster network interface, a client MUST first establish a ClusAPI RPC interface connection to an active node, as specified in section 3.2.3.

In order to operate on a cluster node object, the client MAY call ApiOpenNode (section 3.1.4.1.67 for protocol version 2, or 3.1.4.2.67 for protocol version 3), which obtains an HNODE_RPC context handle to the designated configured node in the cluster. The client MAY determine the names of the configured nodes by using a mechanism such as a node enumeration (see ApiCreateEnum; section 3.1.4.1.8 for protocol version 2, or 3.1.4.2.8 for protocol version 3).

For example, to get the current state of all nodes that are not in the ClusterNodeUp state, the client calls ApiCreateEnum with enumeration type CLUSTER_ENUM_NODE, and for each node name in the enumeration, the client calls ApiOpenNode followed by ApiGetNodeState (section 3.1.4.1.69 for protocol version 2, or 3.1.4.2.69 for protocol version 3).

After a node is opened, the client MAY perform operations on the node such as:

  • Pause node: ApiPauseNode (section 3.1.4.1.70 for protocol version 2, or 3.1.4.2.70 for protocol version 3)

  • Resume node: ApiResumeNode (section 3.1.4.1.71 for protocol version 2, or 3.1.4.2.71 for protocol version 3)

  • Remove node from the cluster configuration: ApiEvictNode (section 3.1.4.1.72 for protocol version 2, or 3.1.4.2.72 for protocol version 3)

When a client has finished performing operations with an HNODE_RPC context handle, it MAY release the context handle by calling ApiCloseNode (section 3.1.4.1.68 for protocol version 2, or 3.1.4.2.68 for protocol version 3).

In order to operate on a cluster network, the client MAY call ApiOpenNetwork (section 3.1.4.1.81 for protocol version 2, or 3.1.4.2.81 for protocol version 3), which obtains an HNETWORK_RPC context handle to the designated cluster network. If the cluster network does not have a well-known name, the client MAY determine the names of the configured networks by using a mechanism such as a cluster network enumeration (see ApiCreateEnum).

After a cluster network is opened, the client MAY perform operations on the cluster network, such as:

  • Query its state: ApiGetNetworkState (section 3.1.4.1.83 for protocol version 2, or 3.1.4.2.83 for protocol version 3)

  • Change its name: ApiSetNetworkName (section 3.1.4.1.84 for protocol version 2, or 3.1.4.2.84 for protocol version 3)

  • Enumerate the cluster network interfaces associated with this cluster network: ApiCreateNetworkEnum (section 3.1.4.1.85 for protocol version 2, or 3.1.4.2.85 for protocol version 3)

When a client has finished performing operations with an HNETWORK_RPC context handle, it MAY release the context handle by calling ApiCloseNetwork (section 3.1.4.1.82 for protocol version 2, or 3.1.4.2.82 for protocol version 3).

In order to operate on a cluster network interface, the client MAY call ApiOpenNetInterface (section 3.1.4.1.92 for protocol version 2, or 3.1.4.2.92 for protocol version 3), which obtains an HNETINTERFACE_RPC context handle to the designated cluster network interface. If the cluster network interface does not have a well-known name, the client MAY determine the names of the configured cluster network interfaces by using a mechanism such as a cluster network interface enumeration, as specified in ApiCreateEnum.

After a cluster network interface is opened, the client MAY perform operations on the cluster network interface, such as querying its state (see ApiGetNetInterfaceState; section 3.1.4.1.94 for protocol version 2, or 3.1.4.2.94 for protocol version 3) and obtaining its unique ID (see ApiGetNetInterfaceId; section 3.1.4.1.96 for protocol version 2, or 3.1.4.2.96 for protocol version 3).

When a client has finished performing operations with an HNETINTERFACE_RPC context handle, it MAY release the context handle by calling ApiCloseNetInterface (section 3.1.4.1.93 for protocol version 2, or 3.1.4.2.93 for protocol version 3).

Show: