AbsInt
Astrée や RuleChecker などの AbsInt ライセンストークンを OpenLM Platform で監視するには、OpenLM Broker を設定し、ライセンスサーバーを承認します。AbsInt License Manager(ALM)は、インストールされているライセンス、各プログラムのトークン使用状況、トークンを保持しているクライアントといった自身の状態全体を、Web インターフェイスを通じて XML で公開しています。OpenLM Broker はこの XML を定期的に要求し、トークンの種類ごとに 1 つのフィーチャーとして、それを保持しているユーザーとともにレポートします。
はじめに
次の前提条件を確認します。
- OpenLM Platform。
- HTTP で ALM の Web インターフェイスに到達できるマシンにインストールされた OpenLM Broker v24.11.11.806 以降。これより前の Broker バージョンでは、ライセンスマネージャーの種類に AbsInt が表示されません。v25.2.6.1326 より前の Broker バージョンでは、既定のデータ照会がお使いの ALM ではなく
http://localhost:8080/?xmlを要求するため、手順 8 で手動で修正します。 - その Broker が Broker Hub で承認済みであること。OpenLM Platform は承認済みの Broker からのライセンスマネージャーデータのみを受け付けるため、Broker 自体が承認されるまで AbsInt エントリは Pending Servers に表示されません。
- ALM を実行しているマシンのホスト名と、その Web インターフェイスの HTTP ポート(既定は
42425)。AbsInt のツールがトークンの要求に使用するポート42426(TLS)と42424(旧バージョンのツール)は使用しないでください。Broker が読み取るのは Web インターフェイスのみです。 - ALM の HTTP インターフェイスが有効になっていること。既定では有効です。
--http-port 0を指定して起動した ALM は HTTP インターフェイスを提供しません。 - Broker マシンから Web インターフェイスのポートで ALM ホストに到達できるようにするファイアウォールルール。
監視できる内容
OpenLM Broker は、AbsInt について次の項目を監視します。
| LM Type in the Broker | Commands | Logs | Quantity | Expiration date | Denied | Borrowing | Allocations | Report resolution |
|---|---|---|---|---|---|---|---|---|
| AbsInt | Yes (web interface) | No | Yes | Yes | No | No | No | Seconds |
データ照会のたびに、Broker は次の値をレポートします。
- Feature name: プログラム名とトークン名をドットでつないだもの(例:
a3c.astree、a3c.rulechecker、a3c.rulechecker-connections)。Broker は、ALM の Token usage タブに表示されるトークンの種類ごとに 1 つのフィーチャーをレポートします。 - Total と In use: トークンの種類ごとの合計数と割り当て済みの数。Token usage タブでは used/total として表示されます。
- Expiration date: ALM にインストールされているライセンスの有効期限。Broker は日付をトークンごとではなくライセンスから読み取るため、すべてのフィーチャーに同じ日付が適用されます。有効期限が
0のライセンスは、無期限としてレポートされます。 - Username と workstation: トークンを保持しているクライアント接続ごとの、AbsInt のツールを実行しているオペレーティングシステムのユーザーと、そのツールが実行されているコンピューター。Connected clients タブに表示される値と同じです。各接続は、保持しているその種類のトークンの数だけライセンスとしてカウントされます。
- License type: Broker はすべての AbsInt フィーチャーを Floating としてレポートします。
- Vendor: Vendors タブで別のベンダーを追加しない限り、Broker は
AbsIntをレポートします。
AbsInt では、Broker はセッションの開始時刻をレポートしません。ライセンスの拒否、借用ライセンス、ライセンス割り当ても利用できず、OpenLM は License Allocation Control のルールを ALM に配布することもできません。
Broker の AbsInt 既定設定
AbsInt ポートを追加すると、次の設定が自動で入力されます。残りのライセンスマネージャー設定は空のままになります。
-
コマンド:
data_inquiryのみで、Broker UI では Data Inquiry と表示されます。既定のコマンドラインはプログラムではなく、Web アドレスです。http://{$host}:{$port}/?xmlBroker UI のコマンドラインには、
{$host}と{$port}の代わりに、License Managers ページの Host とライセンスマネージャーのポートが表示されます。実行のたびに、Broker は資格情報なしでこのアドレスに HTTPGET要求を送信し、ALM が返す XML を読み取ります。これは、ALM の Server information タブにあるリンクから開くものと同じ XML です。AbsInt にはステータスコマンドがないため、要求が成功していれば、Broker はライセンスサーバーをアクティブとしてレポートします。 -
ライセンスファイル: なし。Broker はライセンスの詳細を
license.datからではなく ALM から読み取ります。 -
ログファイル: なし。Log Files タブは空のままになります。Broker は ALM の JSON 接続ログを読み取りません。
-
ポーリング: データ照会は既定で 55 秒ごとに実行されます。2 回の実行の間に開始して終了したセッションは OpenLM に届きません。
-
日付: Broker は、ライセンスのテキストにある有効期限を
日.月.年の形式(例:31.12.2027)で読み取ります。
OpenLM Broker の設定
OpenLM Broker が ALM を読み取るように設定するには、次の手順を実行します。
-
Broker マシンのブラウザーで
http://<alm-host>:42425/?xmlを開きます。<alm-host>には ALM のホスト名、42425には Web インターフェイスのポートを指定します。XML が
<alm>要素で始まり、<token_usage>と<connected_clients>を含むことを確認します。ページが開かない場合は、まず接続の問題を解決してください。Broker も同じ要求を送信します。 -
ALM を監視する Broker の Broker UI を開きます。
Broker マシン上では
http://localhost:5090/を開きます。ローカルアクセスに資格情報は不要です。それ以外のマシンからは、OpenLM Platform で Broker Hub を開き、その Broker の Broker UI アイコンをクリックします。リモートアクセストークンの処理も含めてインターフェイスが開きます。 -
License Managers ページで、Host が ALM マシンを指していることを確認します。
OpenLM はこのホスト名でライセンスサーバーを一覧表示します。このフィールドは AbsInt だけでなく、ページ上のすべてのライセンスマネージャーのホストを保持します。
- フィールドが空の場合は、ALM マシンのホスト名を入力し、フィールドの横にある保存アイコンをクリックします。
- 別のマシンが指定されている場合はそのままにしておき、代わりに手順 8 でデータ照会に ALM のアドレスを入力します。
-
License Managers、Add License Manager の順に選択します。
-
LM Type から AbsInt を選択します。
AbsInt をライセンスマネージャーとして追加します -
Port に ALM の Web インターフェイスの HTTP ポート(既定は
42425)を入力し、Add をクリックします。 -
Commands タブで Data Inquiry コマンドを選択します。
-
テキストボックスでコマンドラインを確認します。
- ALM が Host に指定したマシンで実行されている場合は、既定のコマンドライン
http://<alm-host>:42425/?xmlのままにします。 - ALM が別のマシンで実行されている場合は、
{$host}:{$port}、またはコマンドラインに表示されているホストとポートを、ALM のホスト名とポートに置き換えます(例:http://alm01:42425/?xml)。 - Broker が v25.2.6.1326 より前の場合、既定のコマンドラインは
http://localhost:8080/?xmlです。これをhttp://{$host}:{$port}/?xml、または ALM のホスト名とポートに置き換えます。これらのバージョンでは、Restore Default をクリックすると誤ったアドレスに戻ります。
アドレスの末尾の
/?xmlは残してください。これがないと、ALM は XML ではなく Web ページを返すため、Broker はそれを読み取れません。
既定の Data Inquiry(Host とポートが入力済み) - ALM が Host に指定したマシンで実行されている場合は、既定のコマンドライン
-
(任意)Watch interval (sec) に、任意のポーリング間隔を設定します。既定は 55 秒です。
Timeout (sec)(既定 60 秒)は、Broker が ALM の応答を待つ時間の上限です。
-
Log Files タブは空のままにします。
-
(任意)OpenLM Platform に
AbsInt以外のベンダー名を表示するには、Vendors タブでベンダーを追加します。それ以外の場合は、タブを空のままにします。 -
Save をクリックします。
-
License Managers の一覧から AbsInt ライセンスマネージャーを開き直します。
-
Commands タブに移動します。
-
Execute をクリックし、データ照会をテストします。
テストに成功すると、トークンの種類(例:
a3c.astree)ごとに 1 つのフィーチャーと、トークンを保持しているユーザーを列挙したライセンスサーバーの XML が返されます。一度も保存していないライセンスマネージャーでは Broker は Execute を受け付けず、Need to save first in order to execute commandを返します。 -
次回の定期的なデータ照会を待ちます。
Execute は Broker UI 内でコマンドをテストするだけで、OpenLM Platform には何も送信されません。Broker は定期的なデータ照会で AbsInt を OpenLM Platform にレポートするため、保存してから約 1 分後にライセンスサーバーが Pending Servers に表示されます。
リモートアクセストークンの詳細については、Broker UI を開くを参照してください。
OpenLM Platform で AbsInt を承認
AbsInt を承認するには、Broker UI で設定した Host の名前の保留中エントリを探します。Broker は OpenLM Generic プロトコルで AbsInt をレポートし、Broker UI で設定した Host の名前でライセンスサーバーを識別します。そのため保留中のエントリは、そのホスト名と入力したポートで一覧表示され、License Manager Type は AbsInt と表示されます。
-
OpenLM Platform にサインインします。
-
Navigation(OpenLM Platform のヘッダーにあるグリッドアイコン)、Licenses and Features、License Servers の順に選択します。
-
Management の下で Pending Servers を選択します。
-
Broker で設定したライセンスマネージャーと Host Name および Port が一致する行を探します。
その行の License Manager Type は AbsInt で、Source には Broker の名前が表示されます。
-
その行を選択し、Approve and merge をクリックします。
連携の検証
連携を検証するには、次の手順を実行します。
-
OpenLM Platform で、License Servers、続いて Operational の下の Live Servers Statistics の順に選択します。
-
設定したホストとポートの行を探します。
-
Status が Up であることを確認します。
OpenLM がライセンスと使用状況をサーバーから最後に読み取った時刻である RSQT(Recent Successful Query Time)が最近の時刻であること、および Quantity と Used に数値が入っていることを確認します。
-
Licenses and Features、Licenses、Live Statistics の順に選択します。
AbsInt のトークンの種類(例:
a3c.astree)ごとに 1 行ずつあり、License Type が Floating で、Total と Used に件数が表示されていることを確認します。ALM の Web インターフェイスの Token usage タブと比較してください。 -
フィーチャーの Used の件数をクリックして、セッションが届いていることを確認します。
件数をクリックすると Usage サービスの Currently Consumed Licenses が開き、トークンを保持している各接続が Username と Workstation とともに表示されます。ALM の Web インターフェイスの Connected clients タブと比較してください。
新しい接続の後、ステータスが更新されるまで最大 3 分かかることがあります。
トラブルシューティング
ここでは、AbsInt の監視で発生する問題を扱います。
AbsInt が Pending Servers に表示されないのはなぜですか
AbsInt が Pending Servers に表示されない場合は、Broker Hub を開き、この Broker が Pending Brokers ではなく Brokers にステータス Up で表示されていることを確認してください。OpenLM Platform は承認済みの Broker からのライセンスマネージャーデータのみを受け付けます。
AbsInt にフィーチャーが表示されないのはなぜですか
Broker が承認済みで稼働している場合や、AbsInt がフィーチャーなしで表示される場合は、Broker UI の Commands タブに戻り、Execute をクリックします。結果を次の一覧と照合してください。
- 接続エラーまたはタイムアウト: Broker が ALM の Web インターフェイスに到達できませんでした。Broker マシンのブラウザーでデータ照会のアドレスを開きます。そこでもページが開かない場合は、ホスト名、ポート(既定は
42425で、42424や42426ではありません)、Broker と ALM ホストの間のファイアウォール、および ALM が--http-port 0で起動されていないことを確認します。 - XML の解析エラー: アドレスは応答しましたが、ALM の XML ではありませんでした。コマンドラインの末尾が
/?xmlであること、およびポートが同じホスト上の別のサービスではなく ALM の Web インターフェイスのものであることを確認します。 - フィーチャーはあるがユーザーがいない: ALM に接続しているクライアントが、現時点でトークンを保持していません。Broker は少なくとも 1 つのトークンを保持している間だけ接続をレポートするため、接続しているがアイドル状態のクライアントは OpenLM に表示されません。
- コマンドラインに
localhost:8080が表示されたまま: Broker のバージョンが v25.2.6.1326 より前です。手順 8 のとおりアドレスを修正します。
詳細は、Broker インストールフォルダーの logs フォルダーにある Broker のログに記録されます。手動の Execute は broker-service.log に、定期的なデータ照会は port-<port>-AbsInt.log に書き込まれます。
既知の制限事項
AbsInt の監視には次の制限があります。
- Broker は、ライセンスの拒否、借用ライセンス、ライセンス割り当てをレポートせず、使用状況の履歴もアップロードしません。OpenLM での使用状況は、ライセンスマネージャーを設定した時点から始まります。ALM の Web インターフェイスに表示される過去の累積トークン使用状況は取り込まれません。
- Broker はログではなく ALM の現在の状態を読み取るため、データ照会の実行時にトークンを保持している接続のみを把握できます。監視間隔より短いセッションは捕捉されないことがあります。
- Broker はセッションの開始時刻をレポートしないため、OpenLM でのセッションは、そのセッションを最初に検出したデータ照会の時点から始まります。
- ユーザー名は、AbsInt のツールを実行しているオペレーティングシステムのユーザーです。パスワードで保護されたアクセスのために Manage users タブで定義する ALM のユーザーアカウントはレポートされません。
- Broker は既定でプレーンな HTTP で XML を要求します。お使いの ALM が HTTPS(既定のポートは
42427)でのみ Web インターフェイスを提供している場合は、コマンドラインをhttps://<alm-host>:42427/?xmlに変更します。その場合、Broker の Java ランタイムが ALM の提示する証明書を信頼している必要があります。 - AbsInt では複数サーバーの冗長化は利用できません。
ドキュメントチームは、大規模言語モデルを使ってこのページを下書きすることがあります。公開前に、テクニカルライターがすべてのページをレビューし、製品と照らし合わせて検証します。最終的な判断は人間が行います。