OpenSwitch allows you to run multiple CMs concurrently against one OpenSwitch server to create a redundant environment where a CM is not a single point of failure.
The
RCM does not support concurrent coordination modules. When the RCM
establishes a connection to OpenSwitch, OpenSwitch sets the COORD_TIMEOUT to
zero (0), which turns off the coordinated CM functionality. COORD_TIMEOUT must
be set to zero (0) for the RCM to start.
When multiple CMs connect to one OpenSwitch, the following activities occur, which are transparent to the end user:
Each CM registers its unique name with OpenSwitch using the Client-Library™ CS_APPNAME parameter. The unique name is generated by combining the host name and the process ID.
When the OpenSwitch server accepts a CM connection, it assigns the CM a unique ID number (CM ID) and sends that CM ID back to the CM as a message before the connection event is completed. OpenSwitch maintains an internal list of inactive CMs that are currently available.
If a CM becomes unresponsive for the period of time specified for the COORD_TIMEOUT configuration parameter, OpenSwitch retrieves the next CM ID from the internal list of inactive CMs. All future notifications include the new CM ID as part of the notification.
Figure 2-1: Concurrent coordination modules
See “Creating a minimal coordination module” for basic instructions on creating
CMs.