なぜ複数のライセンスを使いたいか?
長年Sonnetを使っているうちに、隣の部署が自分の部署よりいいライセンスを買ったり、 組織変更で、ライセンスの一部が別の部署に移ったりして運用上不便なことになることがあります. 例えば、
- 自分のpcにはdxfgeo(dxfファイルのインターフェース)が無いけれど、隣の部署はdxfgeoのネットワークライセンスを持ってる. 普段は自分のライセンスで解析をしているが、たまにdxfファイルを読み取るときには隣の部署のdxfgeoライセンスを借りたい.
- 自分の部署にはxgeomのライセンスが一つしかないが、隣ではxgeom siteライセンスを持ってる. モデル入力の時だけ隣のライセンスを借りて、他の作業は自分のライセンスを使いたい
こんなときに、複数のライセンスサーバーや、ライセンスファイルに勝手に問い合わせて必要なライセンスを探してくれると便利です.
前提条件
ここでは一例として、
- HOST[1] : nodelockedライセンスで、しかも機能が限られている.
- HOST[2] : networkライセンスで、機能が十分
な場合にHOST[1]が、HOST[1]自身のライセンスに含まれて居ない機能のライセンスを HOST[2]から借りてくるように設定する方法を紹介します.
もちろん、この二つのマシンはネットワークで接続され、名前解決やルーティングが正常に行われ、特にファイアウォールやウィルス対策ソフトによる通信の阻害があってはなりません. 下記の説明ではMACBOOKのOSとしてWindowsを想定していますが、 linux,unixの場合も操作が違うだけで動作原理は同じです.
設定の手順
設定はHOST[1]に対してのみ行います.
ライセンスサーバーの自動起動
ノードロックライセンスの場合は、電源投入後にライセンスサーバーを自動起動せず、必要になったとき初めて起動してお使いの方が多いです.(sonnetを電源投入後初めて使うとき一瞬黒い画面が表示される)
しかし、複数のライセンスを利用する場合、もしHOST[1]のライセンスサーバーが動いていないと、HOST[1]はライセンスサーバーを起動せず、HOST[2]のライセンスを使おうとします.そこでHOST[1]のライセンスサーバーを電源投入後自動的に起動し、HOST[1]が自分で持っているライセンスを使うように設定します.
目的のバージョンを選びます.
もし、[start server at Power up] と[use services]のチェックがoffなら入れて、[Save Service]ボタンをクリックして保存してください.
HOST[1]のライセンスファイルの在り処の確認
HOST[1]がどのライセンスファイルを使っているかを、正確に把握します.この情報はこの後で必要になります.
[Admin]-[License...]を選びます.[Advanced]ボタンを押します.
これがライセンスファイルの在り処です.
この HOST[1]ライセンスファイルの在り処の 情報は後で必要です.どこかに記録しておいてください.
よそのライセンスを見る設定
Sonnet Tool Barのメニューから
[Admin]-[Diagnostics]-[Edit sonnet.ini File]を選んでください.
たぶんメモ帳でsonnet.iniファイルが開きます.
58行目付近に LM_LICENSE_FILE_Enabled=On という記述があればOKです.offなら Onに直して保存してください.
windowsのコントロールパネルからシステムのプロパティの[環境変数]を開いてください
システムの環境変数を新規に追加します.(新規のボタンが二つあります、ユーザーでなくシステムにしておいたほうが無難でしょう)
環境変数 SONNETD_LICENSE_FILE に 変数値 C:\Program Files\sonnet.11.56\licenses\sonnet.lic;7852@host2.localdomain を設定します.
この変数値は二つのライセンスを見るように指定してあります. 前半が、HOST[1]ライセンスファイルの在り処で、後半がHOST[2]ライセンスサーバーのホスト名とポート番号です. HOST[1]ライセンスファイルの在り処は上で確認しました. HOST[2]ライセンスサーバーのホスト名とポート番号についても、通信可能なようにOSやネットワーク環境設定がなされていなければなりません.
終わり
HOST[2]については何もすることがありません.HOST[1]では少なくともsonnet task barを再起動して、動作を確認して置いてください.
うまくいったらさらに念のためにHOST[1]を再起動して期待通りの動作をするか試してください.