メインコンテンツまでスキップ

NI VLM

以下の手順で、NI Volume License Manager(NI VLM)を OpenLM で監視します。NI VLM がネットワークから切り離されたコンピューター向けに切断するライセンスも対象です。NI VLM は FlexNet のライセンスサーバーを実行するため、OpenLM Broker は FLEXlm のライセンスサーバーと同じように lmutil で問い合わせます。ライセンスマネージャーの種類 NIVLM では、Broker は NI VLM のコマンドラインツール nivlmcmd.exe も実行して切断済みライセンスをエクスポートし、それぞれを借用ライセンスとして OpenLM SLM にレポートします。これにより、EasyAdmin で各切断済みライセンスを保持しているコンピューターと、その有効期限を確認できます。

要件​

開始する前に、次を用意してください。

  • EasyAdmin にアクセスできる OpenLM SLM。
  • NI VLM サーバーのマシンにインストールされ、OpenLM SLM にレポートしている OpenLM Broker v26.7.8.1247 以降。それより前の Broker リリースでは、ライセンスマネージャーの種類に NIVLM が表示されません。Broker は nivlmcmd.exe をローカルで実行するため、NI VLM サーバー上で動作する必要があります。
  • NI Volume License Manager 2025 Q4 以降。NI は、このバージョンで nivlmcmd.exe に disconnected-usage エクスポートを追加しました。
  • NI VLM のインストールフォルダーにある nivlmcmd.exe。既定は C:\Program Files (x86)\National Instruments\Volume License Manager\nivlmcmd.exe です。
  • NI VLM サーバー上で管理者権限で動作する Broker サービス。nivlmcmd.exe は管理者権限がないと動作しません。
  • NI VLM の Main Licensing Port。既定は 27000 です。確認するには、NI VLM を開いて Tools → Preferences → General に移動します。

監視機能​

種類 NIVLM では、Broker は種類 FLEXlm と同じライセンスサーバーの lmstat レポートを OpenLM SLM に送信し、次の 2 点を変更します。

  • 切断済みライセンス: Broker は nivlmcmd.exe のエクスポートにある各ライセンスを、借用ライセンスとしてそのフィーチャーに追加します。また、追加した切断済みライセンスの数だけ、フィーチャーの発行済み合計数と使用中の数の両方を増やします。
  • 予約: Broker はレポートから予約の行をすべて削除し、予約されたライセンスを使用中のライセンスから差し引きます。NI VLM の lmstat レポートでは、切断済みライセンスはホストグループの予約の中に含まれ、どの予約が切断済みかはレポートからわかりません。

切断済みライセンスごとに、Broker は次の情報をレポートします。

  • Feature name: エクスポートの PackageName の値(例: LabVIEW_Pro_PKG)。
  • Username と Workstation: ClientName のコンピューター名。NI VLM 2026 Q3 以降、NI はコンピューターベースのライセンスのみを切断します。
  • Start time: CreationDateTimeUTC の値。NI VLM が切断済みライセンスを作成した時刻です。
  • Linger time: CreationDateTimeUTC から、切断済みライセンスの有効期限である ExpirationDateTimeUTC までの時間。

OpenLM と NI VLM の連携方法​

図: ライセンスサーバー上の OpenLM Broker がコマンドラインツールを実行してログファイルを読み取り、データを OpenLM Server に送信します。OpenLM Server は EasyAdmin Web アプリケーションで管理します。 OpenLM が NI VLM のライセンス使用状況を収集する仕組み

Broker は NI VLM サーバーのマシン上で実行され、ライセンスデータを OpenLM SLM に送信します。NI VLM では、Broker は 2 つのコマンドラインツールを実行し、ログファイルは読み取りません。

  • コマンド: Data Inquiry コマンドはセミコロンで区切られた 2 つのコマンドで構成され、既定で 55 秒ごとに実行されます。

    "<Executable path>lmutil" lmstat -a -c <port>@<Host> -i;"<Executable path>nivlmcmd.exe" disconnected-usage {$destination_path}

    Broker は実行のたびに、最初に lmutil、次に nivlmcmd.exe を実行します。一方が失敗しても、もう一方は停止しません。

  • エクスポート: nivlmcmd.exe は、その時点で切断されているライセンスを、nivlm-disconnected-usage-2026-10-23_09-15-42.csv のように日時を名前に含む CSV ファイルに書き出します。Broker は {$destination_path} を Broker のインストールの nivlm フォルダーに置き換え、そこにある最新のファイルを読み取り、最新の 2 つを除くファイルを削除します。ファイルには切断済みライセンスごとに 1 行があります。

    LicenseName,PackageName,ClientName,IsUser,HostIdLockedTo,CreationDateTimeUTC,ExpirationDateTimeUTC,ReconnectDateTimeUTC,ReconnectReason
    LabVIEW Professional Development System,LabVIEW_Pro_PKG,WS-1001,False,0A1B2C3D4E5F,2026-10-01 08:30:00,2027-01-31 22:59:59,,

    Broker は PackageName、ClientName、CreationDateTimeUTC、ExpirationDateTimeUTC を読み取り、ほかの列は無視します。

  • レポート: Broker は各行を、借用ライセンスの形式で、lmstat 出力の Users of <PackageName>: ブロックに追加します。linger の時間は秒単位です。

    WS-1001 WS-1001 WS-1001 (nivlm01.example.com/27000 1), start Thu 10/1 08:30 (linger: 10592999)

    Broker は、lmstat 出力にその PackageName のブロックがある場合にのみ行を追加し、それ以外の行は破棄します。

  • セッション: Data Inquiry のたびに、その時点で切断されているライセンスをレポートします。NI VLM の管理者がコンピューターを再接続すると、そのライセンスはエクスポートから外れるため、次のレポートには含まれません。

  • ログファイル: なし。種類 NIVLM には独自のログファイルの種類がなく、Log Files タブには Other だけが表示されます。

NI VLM を確認する​

Broker は nivlmcmd.exe がエクスポートした内容だけをレポートするため、最初に NI VLM サーバーでエクスポートを手動で実行します。

  1. ほかのユーザーの切断された Remote Desktop セッションも含め、サーバー上のすべてのセッションで NI Volume License Manager を閉じます。

    NI VLM のユーザーインターフェイスが開いている間、nivlmcmd.exe は実行できません。

  2. 管理者としてコマンドプロンプトを開き、既存のフォルダー(例: C:\Temp)へのエクスポートを実行します。

    "C:\Program Files (x86)\National Instruments\Volume License Manager\nivlmcmd.exe" disconnected-usage C:\Temp

    ツールは Report exported successfully to に続けて、新しい CSV ファイルのパスを表示します。

  3. CSV ファイルを開き、想定している切断済みライセンスが 1 ライセンスにつき 1 行で一覧表示されていることを確認します。

OpenLM Broker の設定​

注意

この手順を開始する前に、NI VLM サーバーのマシンに OpenLM Broker をインストールし、OpenLM SLM にレポートしていることを確認してください。

  1. NI VLM サーバーのマシンでブラウザーを開き、Broker の Web UI(http://localhost:5090/)に移動します。

  2. License Managers ページで、Host に NI VLM サーバーのマシンのホスト名を設定し、フィールドの横にある保存アイコンを選択します。

    Broker はライセンスマネージャーを追加した時点でホスト名を lmutil のコマンドに書き込むため、Host はライセンスマネージャーを追加する前に設定します。

  3. この Broker がすでにこの NI VLM サーバーを FLEXlm として監視している場合は、ライセンスファイルのパスなど、そのライセンスマネージャーの設定を控えてから、License Managers の一覧から削除します。

    Broker は、この Broker のほかのライセンスマネージャーがすでに使用しているポートを、無効なライセンスマネージャーのポートであっても受け付けません。種類 NIVLM は同じポートに問い合わせます。

  4. License Managers → Add License Manager に移動します。

  5. LM Type から、FLEXlm ではなく NIVLM を選択します。

  6. Port に NI VLM の Main Licensing Port(例: 27000)を入力し、Add を選択します。

    LM Type が NIVLM、ポートが 27000 に設定された Add License Manager ダイアログ NI VLM をライセンスマネージャーとして追加する

  7. Commands タブで Data Inquiry を選択し、コマンド内の nivlmcmd.exe のパスを変更します。

    Broker は、Broker のインストールの tools64 フォルダーである Executable path を使って両方のコマンドを入力済みにします。lmutil はこのフォルダーから実行されますが、nivlmcmd.exe は NI VLM のインストールフォルダーにあります。nivlmcmd.exe の前のパスをそのフォルダーに置き換え、コマンドのほかの部分はそのままにします。

    "C:\Program Files\OpenLM\OpenLM Broker\tools64\lmutil" lmstat -a -c 27000@nivlm01.example.com -i;"C:\Program Files (x86)\National Instruments\Volume License Manager\nivlmcmd.exe" disconnected-usage {$destination_path}

    {$destination_path} はそのままにします。Broker はエクスポートを Broker のインストールの nivlm フォルダーからのみ読み取り、コマンドの実行時に {$destination_path} をそのフォルダーに置き換えます。Broker はコマンドを 55 秒ごと(Watch interval (sec))に実行します。

    Data Inquiry が選択され、ポート 27000 の Data Inquiry コマンドに NI VLM のインストールフォルダーにある nivlmcmd.exe のフルパスが入った Commands タブ Data Inquiry コマンドに nivlmcmd.exe を指定する

    後で Executable path を変更するか Restore Default を選択すると、Broker は既定のコマンドに戻します。その後、nivlmcmd.exe のパスを再度変更します。

  8. Vendors タブと Log Files タブはそのままにして、Save を選択します。

    Vendors タブには、この種類のために Broker が追加する NIVLM という名前のベンダーが表示されます。

OpenLM SLM の設定​

ライセンスサーバーは種類 FLEXlm で承認します。種類 NIVLM のレポートは切断済みライセンスを追加した lmstat 出力であり、OpenLM SLM はこれを FLEXlm の出力として読み取ります。

  1. EasyAdmin(http://<Server IP>:5015)を開き、Start → Widgets → License Manager - Servers に移動します。

  2. ウィジェット上部の There are N servers pending approval リンクを選択します。

    Administration - License Manager Servers ウィンドウが開き、保留中のエントリが一覧の先頭に表示されます。

  3. Broker で設定した NI VLM サーバーのホスト名とポートを持つ保留中のエントリを探し、その行の末尾にある編集アイコンを選択します。

  4. Type を FLEXlm に設定し、必要に応じて Display name で接続の名前を変更し、Host Name と Port を確認して APPROVE を選択します。

設定の確認​

  1. ブラウザーで EasyAdmin を開きます。
  2. Start → Widgets → License Manager - Servers に移動します。
  3. NI VLM のライセンスサーバーが種類 FLEXlm、ステータス Up to date で表示され、Borrowed に切断済みライセンスが含まれていることを確認します。
  4. Start → Operational → Currently Consumed Licenses に移動し、各切断済みライセンスが Borrowed にチェックマーク付きで、Username と Workstation にコンピューター名、Linger Due に有効期限が表示されていることを確認します。

トラブルシューティング​

Broker は、このライセンスマネージャーのメッセージを Broker のインストールの logs フォルダーにある port-<port>-NIVLM.log(例: port-27000-NIVLM.log)に書き込みます。このセクションのメッセージは ERROR メッセージのため、既定のログレベルで表示されます。ログを次のケースと比較します。

  • NiVLM nivlmcmd sub-command failed に続いて理由が表示される。Broker は nivlmcmd.exe を実行できません。OpenLM Broker の設定の説明に従って、Data Inquiry コマンド内の nivlmcmd.exe のパスを確認します。
  • NiVLM nivlmcmd produced no CSV content in に続いてフォルダーが表示される。nivlm フォルダーにエクスポートがありません。NI VLM を確認するの説明に従ってエクスポートを手動で実行します。ツールが Error 17001: NI Volume License Manager is already running. と表示する場合は、サーバー上のいずれかのセッションで NI VLM のユーザーインターフェイスが開いています。すべてのセッションで閉じます。手動ではエクスポートできても Broker からはできない場合は、Broker サービスが管理者権限で動作していることを確認します。管理者権限がないと、nivlmcmd.exe は Please run the application as an administrator. と表示します。
  • NiVLM lmutil sub-command produced no output。Broker はライセンスサーバーに問い合わせできません。ライセンスマネージャーのポートと Host を確認します。

切断済みライセンスがエクスポートにあるのに OpenLM にない場合は、その PackageName をライセンスサーバーのフィーチャーと比較します。Broker は、lmstat 出力に同じ名前で一覧表示されるフィーチャーにのみ行を追加し、それ以外の行は ERROR メッセージを出さずに破棄します。

既知の制限​

種類 NIVLM による NI VLM の監視には、次の制限があります。

  • Broker がエクスポートするのは、Data Inquiry の時点で切断されているライセンスだけです。ライセンスマネージャーを設定する前に NI VLM が切断したライセンスの履歴は OpenLM に届きません。
  • Broker は、切断済みライセンス以外の予約も含め、lmstat レポートから予約の行をすべて削除します。このライセンスサーバーの予約は OpenLM に表示されません。
  • 各切断済みライセンスは、コンピューター名をユーザー名とワークステーションの両方として届きます。
  • 有効期限のない切断済みライセンス(エクスポートでは Permanent)には linger の時間がありません。Broker は linger の時間なしで追加するため、借用としてマークされません。
  • nivlmcmd.exe が失敗すると、Broker は nivlm フォルダーにすでにある最新のエクスポートを読み取ります。その場合、エクスポートが成功するまで、OpenLM はそのエクスポートの切断済みライセンスを表示し続けます。
  • 種類 NIVLM には、種類 FLEXlm が拒否を読み取るログである FlexLM Debug Log File のログの種類がありません。
  • 既定の Data Inquiry コマンドは、Broker の tools フォルダーで nivlmcmd.exe を探します。OpenLM Broker の設定の説明に従って、パスを手動で変更します。
  • License Managers ページの Detect では、NIVLM のライセンスマネージャーは追加されません。ライセンスマネージャーは手動で追加します。

ドキュメントチームは、大規模言語モデルを使ってこのページを下書きすることがあります。公開前に、テクニカルライターがすべてのページをレビューし、製品と照らし合わせて検証します。最終的な判断は人間が行います。