Question & Answer
Question
You want to set up a failover system for IBM Informix Connection Manager. You want client requests to be serviced when a Connection Manager instance is unavailable, so you want to configure a backup Connection Manager. Is there an explicit configuration that tells the system to fail over from one to the other? How do you configure Connection Manager redundancy?
Answer
You can have more than one Connection Manager instance running and you can configure failover. There is no explicit command or configuration that says: "If Connection Manager instance cmA is offline, use cmB." The configuration is more subtle and is implemented with groups in the sqlhosts file.
You create Connection Manager redundancy by including Connection Manager service level agreements (SLAs) from different Connection Manager instances in one sqlhosts group. You treat them as one (the group). A client connection using the group name selects one of the group member SLAs for the connect. If a Connection Manager that owns a given SLA in the group is offline, then a different SLA in the group is chosen and the connection goes through the manager that owns that SLA. This is how redundancy is implemented.
An example configuration follows below. There is one HDR pair and two Connection Manager instances. One Connection Manager instance is on machine bluebird and the other is on machine firebird. Both groups (primary_g and report_g) in the sqlhosts file have one SLA from each Connection Manager instance. Consider, for example, a client that has INFORMIXSERVER set to report_g. The client might connect to an Informix server using report1 and its Connection Manager cm_example1. However, if cm_example1 is offline, the connection would use report2 and Connection Manager instance cm_example2 would direct the connection to an Informix server instance.
Connection manager configuration file on machine bluebird
NAME cm_example1
LOGFILE /test/test_hdr/cmsm/cmsm.log
DEBUG 0
{
SLA ifmx_pri1 primary
SLA report1 (HDR+primary)
}
Connection manager configuration file on machine firebird
NAME cm_example2
LOGFILE /test/test_hdr/cmsm/cmsm.log
DEBUG 0
{
SLA ifmx_pri2 primary
SLA report2 (HDR+primary)
}
The sqlhosts for connection manager (both machines) and clients
#Informix server instances, HDR primary and secondary
hdr_pri onsoctcp bluebird pri
hdr_sec onsoctcp firebird sec
#SLA groups
primary_g group - - c=1
ifmx_pri1 onsoctcp bluebird port1 g=primary_g
ifmx_pri2 onsoctcp firebird port2 g=primary_g
report_g group - - c=1
report1 onsoctcp bluebird port3 g=report_g
report2 onsoctcp firebird port4 g=report_g
Note: When you configure the group using the c=1 option, a connection to the group will randomly select the SLA in the group to use for the connection.
Related Information
Was this topic helpful?
Document Information
Modified date:
16 June 2018
UID
swg21584668