Q100717: 複数のサーバーにまたがるフローティングライセンスの場合のライセンスチェックアウトの重複

まとめ

RLMフローティングライセンスを使用すると、ネットワーク上のクライアントマシンを複数のライセンスサーバーに接続できます。これは主にフェイルオーバーライセンスに使用されます。フェイルオーバーライセンスでは、プライマリサーバーがオフラインになった場合、セカンダリサーバーが代わりにフローティングライセンスを開始します。この設定は、負荷分散にも使用できます。

しかし、RLMライセンスの仕組み上、負荷分散のために複数のサーバーにクライアントを指定した場合には、ライセンスのチェックアウトが重複する可能性があります。これは、クライアントが1台のワークステーションで同じ製品(例: Nukeの追加インスタンスを起動する際に、1台のマシンに2つのライセンスをチェックアウトしてしまうことを意味します。

詳細情報

ユーザーが製品を起動すると、指定されたライセンスサーバーが順番にチェックされます。この例では、環境変数を使用して2つのライセンスサーバーが指定されたクライアントマシンでNukeを起動します。

foundry _LICENSE=4101@Server01;5053@Server02

利用可能なライセンスがない場合、 NukeまずServer01からライセンスのチェックアウトを試行してから、 Server02に進みます。

製品のインスタンスを起動すると、常に利用可能なライセンスの有無が確認されます。これは、その製品のインスタンスが既に実行され、ライセンスが付与されている場合でも当てはまります。通常、単一のサーバーを指定した場合、クライアントは既にライセンスがチェックアウトされていることを認識するため、追加のライセンスを取得することはありません。

2台のサーバーをポイントする場合、クライアントは最初にServer02からライセンスをチェックアウトすることがあります(その時点でServer01のライセンスがすべて使用中の場合)。ただし、Server01でライセンスが利用可能になり、製品の2つ目のインスタンスが起動されると、クライアントはServer01から2つ目のライセンスを取得します。その結果、マシンはServer01とServer02からそれぞれ1つずつ、合計2つのライセンスを占有することになります。

クライアントマシンで環境変数RLM_PATH_RANDOMIZE使用している場合、この問題はさらに悪化します。この環境変数は、クライアントが起動時にライセンス確認のために参照するサーバーからランダムに1つを選択します。つまり、ソフトウェアの2つ目のインスタンスを起動する際に、別のサーバーを参照してしまい、重複チェックアウトが発生する可能性が高くなります。

回避策

この問題を回避するには、サーバーとクライアントを分離してライセンスを管理することをお勧めします。クライアントマシンを複数のライセンスサーバーに接続するのではなく、単一のサーバーのみに接続することで、ライセンスの重複を回避することができます。例えば、以下のようになります。

Server01に 50 個のライセンス、 Server02に 50 個のライセンスを持ち、両方のマシンに 100 個のクライアントを指定する代わりに、 Server01に 50 個のクライアント、 Server02に 50 個のクライアントを指定することをお勧めします。

さらに詳しく

フローティングのインストールと管理の詳細については、次の記事を参照してください。

Q100264: マシンをライセンスサーバーにポイントする方法

Q100129: RLM フェイルオーバー サーバーはどのように機能しますか?

    私たちはそれを聞いて申し訳ございません

    理由をお聞かせください