- Connecting to the coordinator
- Starting the cluster
- Automatic start at boot time
- Manual startup after a forced stop
- Stopping the cluster
- Automatic stop when switching the servers off
- Stopping the cluster manually
- Failure of one or more nodes
- Resynchronizing the cluster
- Correcting the potential problems signaled by the HFSQL Control Center
- No source for synchronization
- No IP address is associated with the DNS name
- A node is missing in the DNS record of the cluster
- A DNS entry does not correspond to a node
- The cluster is associated with no DNS name
- Managing the HFSQL databases
Managing HFSQL Cluster
Available only with this kind of connection
Most HFSQL cluster management tasks are done via the HFSQL Control Center
The most common management tasks are:
A specific setup package is required to use HFSQL Cluster.
This pack can be downloaded at no extra cost on PC SOFT site, in the download section of modules common to version 27.
Connecting to the coordinator
To connect to the coordinator via the HFSQL Control Center:
- Start the HFSQL Control Center.
- In the home window, click "Connect to an HFSQL cluster".
- In the "New connection" section, enter:
- the address of the coordinator.
- the password for cluster management (optional). This password was chosen when installing the cluster.
- This password must be specified to manage the cluster nodes.
- This password is not required to manage the cluster databases.
- Validate. The cluster characteristics are displayed in the HFSQL Control Center.
- The option "Connect to an HFSQL cluster" must be used to manage the databases. The cluster databases are managed like the HFSQL Client/Server databases.
- If the HFSQL Control Center is already running, you can use the drop-down menu to connect to a cluster:
Automatic start at boot time
The HFSQL cluster is started automatically when the various servers in the cluster are booted up.
The cluster starts in the following order:
- Starting the service of the coordinator (ClusterManager service).
- Starting the HFSQL servers of different nodes.
- Connecting the nodes to the coordinator.
- Checking the synchronization of all the databases.
In case of desynchronization, a synchronization is started on the nodes whose database is not updated. If no node owns an updated database for sure (if the cluster was stopped by a general power failure for example), you will have to manually choose the node that will be used as data source for the synchronization. To learn more about the details of this procedure, see Resynchronizing the cluster.
- The cluster is available to process the connection requests from the client applications.
Manual startup after a forced stop
If the cluster has been stopped voluntarily via the HFSQL Control Center ("Stop cluster" option) or with HClusterStop
, you can restart it with the "Start" button in the HFSQL Control Center or with HClusterStart
Automatic stop when switching the servers off
When a server hosting a node of an HFSQL cluster is switch down, the node is automatically excluded from the cluster. Its database will be automatically resynchronized when the server is restarted.
Caution: Stopping the ClusterManager service does not stop the cluster.
Stopping the cluster manually
The cluster can be stopped manually via the HFSQL Control Center by using the "Stop" button found in the management interface.
Failure of one or more nodes
Several cases may occur when one or more nodes of an HFSQL Cluster fail (hardware failure, failure of the operating system or network problems).
The table below presents the different cases that can occur for a cluster of N nodes among which n are enabled:
|Number of nodes|
enabled (= n)
|n > N/2||More than half the nodes are enabled: the cluster operates as usual.|
|n = N/2||Exactly half of the nodes are enabled: the cluster operates normally if the coordinator is enabled, otherwise the cluster stops.|
|n < N/2||Less than half the nodes are enabled: the cluster stops.|
This operating rule prevents the cluster from being divided into two sections ("split-brain" phenomena) further to a network failure and that each section keeps on operating independently and desynchronizes the databases. Only the section containing more than half of the nodes will remain active. If the cluster is divided into two segments of equal size, the presence of the coordinator is used to decide between the groups.
Resynchronizing the cluster
A synchronization of the databases is performed when a cluster is started or when a node is added.
Two cases may occur:
- The cluster is started and the active nodes have a synchronous database.
The new node is automatically synchronized with the current status of the rest of the cluster. There is no action to perform. As soon as the new node is synchronized, it joins the cluster and it processes the connection requests from the client applications.
- The cluster is stopped and no node owns for sure the most updated version of the database.
In most cases, this case occurs after a general failure (power failure, network down, etc.). In this case, the cluster cannot be automatically restarted. The HFSQL Control Center must be used to select one of the nodes as source for synchronization. Its database will be used as reference and the other nodes will be synchronized according to it.
Remark: The reference node must be chosen with great care. Indeed, the databases of the other nodes will be overwritten by the database of the reference node.
Remark: During the synchronization, a progress bar used to follow the synchronization progress is displayed in the HFSQL Control Center (in the table for managing nodes, "Status" column for example). You also have the ability to follow the synchronization progress via HClusterSynchronizationInfo. HClusterSynchronizationErrorInfo is used to find out the last synchronization error.
Correcting the potential problems signaled by the HFSQL Control Center
The HFSQL Control Center can signal a number of problems regarding the status of an HFSQL cluster and it can automatically correct some of them. The list of potential problems is as follows:
No source for synchronization
|Problem||Waiting for a source of synchronization.|
|Reason||None of the cluster nodes includes a database for an automatic synchronization.|
|Resolution||Choose a reference node for the synchronization.|
No IP address is associated with the DNS name
|Problem||No IP address is associated with the DNS name (<DSN name>) of the cluster (<Cluster name>).|
|Reason||No DNS entry corresponds to the DNS name chosen for the cluster. The client computers cannot connect to the databases of the cluster.|
|Resolution||Add a DNS entry for the IP of each cluster node corresponding to the DNS name chosen for the cluster. This operation can be automatically performed from the HFSQL Control Center.|
A node is missing in the DNS record of the cluster
|Problem||A cluster node is installed on the computer (<Computer name>) while its IP address (<IP address>) is not associated with the DNS name of the cluster (<DNS name>).|
|Reason||One of the cluster nodes is not referenced in the DNS under the DNS name chosen for the cluster. this node will never by used by the client applications.|
|Resolution||Add a DNS entry for the IP of the node corresponding to the DNS name chosen for the cluster. This operation can be automatically performed from the HFSQL Control Center.|
A DNS entry does not correspond to a node
|Problem||The <Computer name> computer (IP address: <IP address>) is associated with the DNS name of the cluster (<DNS name>) while it does not correspond to a node of this cluster.|
|Reason||The DNS record of the cluster name contains an IP address that does not correspond to a node. If a client application tries to connect to this address, it will receive no response and the connection time will be longer.|
|Resolution||Delete the extra DNS entry. This operation can be automatically performed from the HFSQL Control Center.|
The cluster is associated with no DNS name
|Problem||No DNS name was entered for the cluster.|
|Reason||The client applications cannot connect to the cluster.|
|Resolution||Choose a DNS name for the cluster and associate it with all the IPs of the different nodes. This operation can be automatically performed from the HFSQL Control Center.|
Managing the HFSQL databases
The method for managing the databases of an HFSQL cluster is the same as the method for managing a stand-alone HFSQL server. You must connect to the database from the HFSQL Control Center.
If the connection to the database from the HFSQL Control Center is established by using the DNS name of the cluster, this connection uses any node of the cluster (according to the algorithm for load balancing).
If the connection to the database is established by explicitly using the name of a node (by ignoring the algorithm for load balancing), the database of this node is viewed. In this case, you have the ability to view the list of users connected to the node.
- Regardless of the connection method used, the data viewed is strictly the same because of the replication mechanism of the cluster.
- If the cluster is waiting for a synchronization, you cannot connect to the database.
- If a node is currently resynchronized, you cannot connect to the database of this node.
This page is also available for…