Failover Servers – why can’t I have 3?

The question often comes up – “I am used to failover servers configured in a triad (3).  Why can’t RLM support this?”

Whenever this happens, it is because someone is used to the way that FLEXlm configures redundant servers.

The reality is this – RLM and FLEXlm work differently with respect to server failover,  and the RLM method is easier for the end-user to configure, while providing the same amount of server redundancy.  In a FLEXlm redundant-server configuration, a little-known fact is this:

the third server can never serve licenses

This is because, in FLEXlm, 2 of the 3 servers must be running to have the system operate.  So, either servers 1 and 2, 2 and 3, or 1 and 3 must be running.  And FLEXlm (at least until version 10.?) always picks the server whose name is first in an alphabetical sort (we know, we wrote the code).   So the server with the last name, alphabetically, will never serve licenses.

By contrast, with RLM, you pick a primary license server, and a failover server.  If the primary goes down, the failover takes over. There is no 3rd server to configure.  There is no situation where 3 FLEXlm servers would serve licenses that RLM will not serve licenses (assuming RLM is configured on 2 of the 3 FLEXlm servers).  In other words:

adding a 3rd RLM server buys you nothing, other than extra administrative overhead

10 comments

  1. Premu S says:

    What about the cheat possibility, if some one isolate the network between two license servers and start misusing the licenses?
    Isn’t the three license server logic is in place to ensure that the licenses cannot be misused.

  2. admin says:

    That is correct. There is a possibility of misuse of licenses and the ISV can decide whether or not to issue licenses for failover servers.

    The important point is that from an end-user perspective, failover license servers are always easier to manage and more robust.

  3. Paul C says:

    When the primary RLM /ISV service is stopped, with the primary server still operational (power on/pingable from the failover) , should the failover license assume control?

  4. admin says:

    There are 2 kinds of failover servers licenses: rlm_failover and rlm_failover_server.

    The difference between an rlm_failover license and an rlm_failover_server
    license is whether rlm checks for the machine being down (rlm_failover)
    or the rlm process on the machine being down (rlm_failover_server) before
    serving the licenses from the primary server.

    So if you want the failover to take over while the primary server is still
    up but the RLM processes on the primary are not running, you would need
    an rlm_failover_server license.

  5. Frank vdB says:

    Hi,
    The RLM manual states regarding failover checking:
    This is done by attempting TCP/IP connection(s) to ports on the failed server in order to determine whether the server is up or down.

    An end user wants to know exactly what kind of data runs in the
    network for the checking.
    Can you provide this information?

  6. Denis says:

    Hi,

    We found a case where it seems the failover gets broken.
    Actually, we have configured a failover license, and it works perfectly when the primary server becomes down, the failover server successfully takes over the license.
    But the issue come at midnight, it seems the automatic “reread” command sent by the rlm server brakes the current in place failover as it tries to find the primary server (as if we just started the failover process) and doesn’t find (normal as it is still down…).
    So basically, the failover works well but if the primary server isn’t up again before midnight, the license is not available anymore, and no failover is possible until the primary server is up again.
    We were also able to reproduce the issue by manually running the rlmreread command.

    Is normal behavior ? Or is there anything we can do to avoid this situation ?
    (Note: we use RLM 9.2 version)

    Thank you !

  7. admin says:

    Denis: I see that you had a ticket for this issue, and that we resolved it. Please let us know (on the support system) if you have any other issues.

    Thank You.

  8. Peter Franklin says:

    @Reprise: I regret to say the argument you made above is flawed. Let’s suppose
    one uses a primary license server and a failover server. If for whatever reason the
    latter becomes unavailable — say because of a network partition or router failure —
    and then the primary crashes, one is left without an active license server. Basic
    principles of fault tolerant design require primary servers to be backed up by any
    number of secondary servers.

  9. admin says:

    Of course for a truly redundant system this is true. But this misses the point entirely.

    This blog post is a comparison of RLM and FLEXlm’s handling of server failover. With a FLEXlm redundant server configuration, 2 out of the 3 servers have to be running (and not partitioned on the network) for licenses to be served. Given that, there is no situation where a FLEXlm redundant server configuration works and hands out licenses where an RLM failover server configuration would not. That is the point.

    Thank you.

Leave a Reply

Your email address will not be published. Required fields are marked *