High Availability Considerations
Platform Server High Availability (HA) allows two or more Platform Servers to appear as a single Platform Server to clients. All Platform Servers in the Platform Server "cluster" use the same configuration files.
Here are some items that should be considered when implementing HA mode:
-
Each Platform Server that is a cluster member must have its own
$CFROOT/config/config.txtfile. -
The
HADirectoryparameter in theconfig.txtfile must point to a common directory accessible to all Platform Servers in the HA cluster. -
The
ConfigDirectoryparameter inconfig.txtfile must point to a directory with common configuration files under the definedHADirectory. -
Configuration files from one of the Platform Servers (usually defined as the “primary one”) must be copied to the HA
ConfigDirectory. (The only exception is if you are running theinstallscript and upgrading your old primary Platform Server to the new version with a different$CFROOT. Then, you will have to copy configuration files from your old$CFROOT/configto HAConfigDirectorydirectory manually).
The Command Center Server definition for the cluster typically should point to a Load Balancer that directs requests to one of the Platform Servers. When the Command Center adds, deletes, or updates a configuration entry, the updated configuration applies to all Platform Servers in the HA cluster.
CyberResp daemon on any machine in HA setup.
The Load Balancer should not connect to CyberMgr port on any machine in HA setup.
CyberMgr is an RPC server, listening and waiting for RPC requests.
The Load Balancer pinging it causes an interruption and delays of overall Platform Server functionality.$CFROOT/config/config.txt must be identical for each Platform Server in the HA cluster. For example, if you changed HACyberMgrSecondary entry in one of the config.txt files, all other cluster instance config.txt files must be updated with the same value. Otherwise, you can have duplicate transaction numbers and corrupted log files.If you have several Platform Servers in a cluster, manually updating all config.txt files can become error prone. You can do the following to simplify this:
Procedure:
| 1. | Stop all Platform Server responders by running the cfstop script. |
| 2. | Move the config.txt (typically from the primary machine) from $CFROOT/config to HA ConfigDirectory folder. |
| 3. | Rename $CFROOT/config/config.txt on all other Platform Servers. You need not use them anymore. |
| 4. | In the $CFROOT/config folder on each Platform Server, create a soft link, pointing to config.txt in HA ConfigDirectory folder. |
| 5. | Start all Platform Servers; they will use the same shared config.txt. |