Failover License Servers

RLM provides the capability for a license server to take over the license complement of another server which has gone down. The server whose licenses are being taken over is called the primary server. The server which takes over the license load of the primary server is called the failover license server. During the time that the failover server is serving the licenses, no roaming operations are permitted on the licenses.

Note

When using failover servers, there cannot be a firewall between the two servers.

Note

Failover servers are not supported on HP/UX or IBM AIX systems.

The ability for a server to take over the load of another server is selected by an ISV on a customer-bycustomer basis, and enabled by an rlm_failover, rlm_failover_server or rlm_failover_server_activate license in the license file of the server that is to take over.

The difference between an rlm_failover license and an rlm_failover_server/rlm_failover_server_activate license is whether RLM checks for the machine being down (rlm_failover) or the RLM process on the machine being down (rlm_failover_server/rlm_failover_server_activate) before serving the licenses from the primary server. In addition, the rlm_failover_server_activate license requires a license activation from an Activation Pro server before proceeding to serve the primary server’s licenses. With this license, you can see in your ActPro database how often a particular customer’s failover servers have been activated.

While the failover license server can be serving its own compliment of licenses, Reprise Software recommends that it should have no licenses of its own, but simply be standing by, waiting for one (or more) other server(s) to fail so that it can take over. In the remainder of this chapter, we will use the term failover license to mean either the rlm_failover, rlm_failover_server, or rlm_failover_server_activate license.


Enabling a Failover Server

In order to enable a failover license server, the ISV issues a failover license with the following characteristics:

  • count=some non-zero value

  • hostid=<hostid of the primary server>

  • _primary_server=<hostname of the primary server> (rlm_failover licenses)

    <OR>

    _primary_server=<host or port@host of the primary server RLM process> (rlm_failover_server or rlm_failover_server_activate licenses)

  • akey=activation-key – this is the activation key to be used to activate in the case of an rlm_failover_server_activate license.

  • issuer=url-of-activation-server - this is the URL of the activation server to be used to activate in the case of an rlm_failover_server_activate license.

Note

A failover_server/failover_server_activate license can specify just the hostname of the server, in that case, the default port (5053) is used.


Configuring Failover License Servers

Reprise Software recommends configuring failover license servers as stand-alone servers that do not serve their own complement of licenses. In other words, Reprise recommends configuring a license server that has only failover licenses for the other license servers on the network. In general, one license server configured in this way should be sufficient to support failover of all other license servers on the network.

The exception would be a case where each individual license server is serving thousands of clients, in which case we recommend that you configure a failover license server for each one or two of the normal license servers.

Note

Failover license servers do not support license roaming operations. Actually, this is determined on a license pool by license pool basis - any license pool that contains any licenses from a primary server will not support any of the roaming operations.

Example Failover License Server license file

The following license file would specify a license server that is acting as a failover server (on node failover_host, hostid 11111111) for the license server on hostid 12345678 (node primary_server):

HOST failover_host 11111111 5053
ISV reprise
LICENSE reprise rlm_failover 1.0 permanent 1 hostid=12345678
        _primary_server=primary_server sig="x"

## Alternate LICENSE line:

LICENSE reprise rlm_failover_server 1.0 permanent 1
        hostid=12345678 _primary_server=5053@primary_server sig="x"

## Alternate for an activated failover server:

LICENSE reprise rlm_failover_server_activate 1.0 permanent 1
        hostid=12345678 _primary_server=primary_server
        issuer=hostedactivation.com akey=1234-5678-9012-3456
        sig="x"

Note

The hostid in the LICENSE line for the failover license is the hostid of the server on the node primary_server).

Note

The “_primary_server” keyword was called “_failover_host” prior to RLM v9.2. “_primary_server” is an alias for “_failover_host”, which will continue to work. However, RLM versions prior to v9.2 will only recognize the “_failover_host” keyword to specify the primary server name/port #.

The license file on “primary_server” should be a normal RLM license file, without the rlm_failover licenses. This license file MUST be present and readable by RLM on the failover machine as well, otherwise the failover server will not serve the licenses from the primary when it goes down. So, for this example, a license file on the primary server would look something like this:

HOST primary_server 12345678 5053
ISV reprise
LICENSE reprise product1 1.0 permanent 3 sig=....
LICENSE reprise product2 1.0 permanent 7 sig=....
 ...
LICENSE reprise productN 1.0 permanent 2 sig=....

Installing Failover License Servers

When you receive the failover license file, do the following to install your failover license server:

  1. Install RLM, your ISV server and the primary server license files on the primary server. Start RLM.

  2. Install RLM and your ISV server on the failover license server node.

  3. Install all license files from the primary server on the failover license server node.

  4. Edit the license file with the failover license to put the hostname of the primary server in the _primary_server= field, and the hostname of the failover license server on the HOST line.

  5. Install any ISV options in an options file and make it accessible to the ISV server either through its license file or by giving it the default options filename of isv.opt.

  6. Ensure that RLM will process all the license files above and start RLM.

  7. Ensure that your license administrator’s client software sees the failover license server’s license file, i.e., put a license file with a HOST line for the failover server where your application will find it. If you omit this step 6, the failover license server will take over, but your application will not be able to check out a license from the failover server.