This document presents the OpenLM 2.0 Broker software module. It elaborates the module’s installation process for version 2.0, and conveys basic information regarding the OpenLM Broker functionality and configuration options. The OpenLM Broker is an optional though highly recommended component. It provides accurate license statistics, and facilitates communication between the OpenLM Server and the License Manager.
The OpenLM Broker tool is a Java software module installed on the License Manager Server. The Broker interacts directly with the License Manager Server, initiating queries in order to get the current License Server status. It communicates the answers to these queries to the OpenLM Server.
Being a Java component, OpenLM Broker can run on any Java-supported platform. It can be installed on any platform that is supported by the license managers that work with OpenLM; i.e.: FLEXlm (FLEXnet), IBM LUM, HASP, Sentinel RMS, RLM, DSLS, Beta LM and MathLM.
The OpenLM Broker provides the following services to the OpenLM server:
Sending license usage information from the license manager to the OpenLM Server.
Reading the information log files and pushing it to the OpenLM Server.
Reading and Editing option file information from the OpenLM EasyAdmin interface.
Starting / Stopping / Rereading of the license server.
OpenLM Broker– Installation Guide
The OpenLM System components are available for download on the OpenLM site. After filling in User name and email, the User will be directed to the download section. Select the OpenLM Version 2.0 section
In order to install the OpenLM Broker module on Windows platforms:
1. Please go over the installation prerequisites for the OpenLM Broker on the OpenLM site.
2. Download the OpenLM Broker for windows from the OpenLM version 2.0 section (see above), and follow the installation instructions.
3. When installing a Broker on a 64bit Windows system, with a JRE version for 64bit installed, the following “Browse for Folder” window appears:
5. When the installation procedure is finished the configuration tool window will open. This tool automatically detects the settings of FlexLM license managers installed on the machine. The existence and location of FlexLM Option files and license files is not automatically configured; Setting their names and paths remains to be done manually.
In order to install the OpenLM Broker module on Unix/Linux platforms:
1. Review the installation prerequisites for the OpenLM Broker. The installation requires root user privileges.
2. Download the Broker for Unix/Linux file (e.g. openlmbroker_18.104.22.168.tar.gz) from the OpenLM site, Downloads section.
3. CD to the directory where to the OpenLm Broker is to be installed (e.g. /usr/local), and copy the file there.
4. Type sudo tar xvf <filename> (e.g.: sudo tar xvf openlmbroker_22.214.171.124.tar.gz) . This will extract the installation file to the current directory, creating the openlm/broker folder.
5. CD to the recently created openlm folder. Give (read | write | execute) permissions to the broker folder and all its sub folders: sudo chmod -R 777 broker
6. CD to the broker folder, and run the configuration tool by typing: java -jar BrokerConfigurator.jar broker.xml . The configuration tool GUI application opens.
7. Run the “OpenLM Broker” by typing: java -jar OpenLMBroker.jar start broker.xml
OpenLM Broker – Configuration Tool
The next stage will be to configure the receiving OpenLM server parameters and setting name and path of the option file.
Adding an OpenLM server:
The Servers folder holds a list of the designated receiving OpenLM Servers. In order to add an OpenLM server, do as follows:
1. Select the OpenLM Servers directory icon.
2. Click the Add icon.
3. Select OpenLM Server from the selection list.
4. Configure the OpenLM Server’s parameters:
a. OpenLM Server: The server’s name or IP address .
b. Port: The OpenLM port dedicated for the Broker (7016 by default). This is the same port number as appears in the “OpenLM Server Configuration” tool, under the “Port Settings” tab, in the “License Managers Reporting Port” text box.
c. Sending Timeout: The Broker’s sending timeout limit (e.g.: 45 sec).
d. Activate Buffering (Enabled by default): Check this box in order to enable the Broker’s offline mode which keeps the information coming from the broker when not connect to the OpenLM server. All messages buffered will be sent to the OpenLM server when the connection is recovered.
e. Messages in Buffer: The number of messages saved in one buffer file. Note that it is the user’s responsibility to clear the file system.
f. Check connectivity to OpenLM Server: This button performs a connectivity check.
g. Apply: Saves the information entered.
h. Detect: Deletes all license managers and auto looks for new ones. The existing configuration will be backed up, and the new configuration will become active.
5. Click the Restart Broker button.
ADDING A LICENSE SERVER
Upon first startup, the Broker configuration tool automatically detects FlexLM License Managers on the host machine, and displays a list of these license managers under the License Servers folder on the left pane. Several ports can be configured for each license server.
In order to add a license server manually, follow these steps:
1. Select License Servers on the left side of the screen.
2. Click the Add button. A drop-down list appears.
3. Enter the Host Name/IP of the new License Server. Make sure the hostname or IP as configured on the OpenLM Server Configuration tool and on the Broker configuration tool are the same.
LICENSE MANAGER PORT:
1. Highlight the newly named License Server and click Add.Click OK.
2. Click on the Port under the new License Server key symbol. The License Manager Port form appears.
3. Submit the License manager Port parameters:
Port Number: This Number is the same as the one configured in the OpenLM Server Configuration Window, under the License Servers tab.
License Manager Type: Type of License server (e.g.: FLEXlm, IBM LUM, LM-X,RLM, HASP, RMS, DSLS, MathLM ).
LICENSE MANAGER PORT; ADVANCED:
OpenLM can obtain license information via license usage records or via the license file. Some of the information (e.g. license pool membership, pool’s expiration date and license packaging) is obtained solely from the license file. OpenLM 2.0 is capable of reading FlexLM License file information and apply it to its reports. For instance, Packaging information is now applied automatically.In order to do so, the OpenLM Server and OpenLM Broker must be configured to relate to the license file.
Open the OpenLM Server.
Select the License Servers Settings tab.
From the Type drop-down menu, select the FlexLM Server.
Click the Advanced settings menu. Check the Read License file box. See the image below for clarification.
Using the OpenLM Broker configuration tool, configure the following:
License File path: When using FlexLM, the default License file path is set automatically. In order to set it manually, check the Set Path Manually box. This way, the system will only refer to the path as given in the License File Path text box, and will not apply any changes automatically.
Watch License File: License file will be checked periodically as defined in the Watch Interval, and will send license file information to the OpenLM server.
Watch interval: The Interval at which the License File is read. It is recommended to keep the 300 sec default value.
- Click the Apply button on the bottom-right corner of the Broker Configuration window and then the Restart broker button in order to apply new License Server configurations.
LICENSE SERVERS- COMMANDS
The Commands menu sets the path to License manager commands. These commands are License Manager specific, and the paths for these commands may be set for each License server or vendor (port) individually.
Upon installation, the default search path for FlexLM commands would be automatically detected through the system registry. Other license managers’ command paths are set by default to: C:\Program Files\OpenLM\OpenLM Broker\tools\
CHANGING COMMAND PATHS
Click the Commands bullet under the New License Server’s Port icon.
There are 2 options for changing the command paths:
In order to set all the License manager’s commands globally, per a specific license manager type (e.g. FlexLM), check the Update according to Advanced Settings radio button and click the Update button. When applied, the globally declared License manager’s command paths listed in the Advanced settings menu (Indicated by the wrench icon) on the selected port.
In order to set all the License manager’s commands of a certain port, check the Update to the following path radio button, type the required path in the adjacent text box, and click the Update button.
Use Service (Checked by default): This configuration affects FlexLM Start / Stop commands. When selected, the netstart / netstop windows services commands are used. Otherwise, FlexLM specific ‘lmgrd’ and “lmutil down” are applied.
The user may edit individual command paths and parameters:
Click the Status bullet under Commands.
The Status command line appears in the Command Line text box. This command is assembled and executed according to the selected license manager type.
The Status command queries the License Server for its status; Up and working or idle.
Execute: Click this button to execute the Status command line.
Restore default: Revert changes made to the command line prior to clicking the Apply button.
Interval: This is the time period between Status command executions. It is recommended to keep the default value presented in this form.
Click the Data Inquiry bullet under Commands.
The Data Inquiry command line appears in the Command Line text box. This command is assembled and executed according to the selected license manager type. The Data Inquiry command periodically queries the License Manager for license usage information. The OpenLM Broker then forwards this information to the OpenLM Server.
Execute: Click this button to execute the Data Inquiry command line.
Restore default: Revert changes made to the command line prior to clicking the ‘Apply’ button.
Interval: This is the time period between Status command executions.
Start and Stop
Click the Start or Stop bullets under Commands bullet. The respective command definition form appears on the right-hand side of the window.
The Start and Stop command lines appears in the Command Line text box. These commands are assembled and executed according to the selected license manager type. The Start and Stop commands literally start and stop the the License Manager Server’s activity.
In the case of FlexLM only, the Use Service (Change Command section listed above) configuration also affects FlexLM Start / Stop commands. When selected, the netstart / netstop windows services commands are used. Otherwise, FlexLM specific ‘lmgrd’ and “lmutil down” are applied.
Click the Reread bullet under Commands.
The Reread command line appears in the Command Line text box.The Reread command forces the license manager to re-read Option files or License files that have been edited, and relate to newly introduced information.
LICENSE SERVER – VENDORS
Click the Vendors bullet. The Vendor definition form is opened in the right pane. This form handles the vendor specific License and Option files. Click Add from the top of the screen and select Vendors.
1. Vendor Name (e.g.: ARCGIS, adskflex, ptc_d, MLM, ugslmd): The vendor’s name should be EXACTLY as provided by vendor. You can usually find the vendor name in the Broker’s ‘data inquiry’ command execution output (see above).
2. Option File Description: A descriptive name of the user’s choice (e.g.: my_OptionFile).
3. Option File Path: The option file related to the vendor, stated with its full path.
- Watch Option File: This box should be checked in order to sample the Option file for local changes. Please consult OpenLM Support before checking this box.
- Watch interval: The Interval at which the Option file is read. It is recommended to keep the 600 sec default value.
4. Click Apply.
License Server-Log file:
Click the Log Files bullet . The Log Files Definition form is opened in the right pane. These log files are produced by the license manager, which are read by the OpenLM Broker, and forwarded to the OpenLM server for further analysis of license usage. Click Add from the top of the screen and select Log file.
1. Type: From the drop-down menu, select the log file type. The currently supported types are:
FlexLM Debug log provides accurate license check – out / check – in timing information
ESRI (FlexLM) Audit log provides the identity of borrowed licenses’ users. For more on Audit log information please see below.
2. Name: Name of the new License Server’s log file.
3. Path: Fill in the Path on which to locate the License Log file.
4. Click the Advanced>> link to reveal more configurable parameters. It is recommended not to change the default values of these parameters:
Set data size limit: Data chunk size that is read from the log file.
Read file every: Configurable time period for reading the log file.
Audit log information
ESRI license administrators have long noticed that license borrowers are not identified by license server querying, i.e. by running lmutil lmstat commands. Instead, the borrowed user is identified as “Activated License(s)”, which isn’t very helpful in understanding who is taking the license needed.
In order to configure OpenLM to display borrowed licenses’ users’ identity, the Broker should be configured to read the Audit log.
Click the Advanced Settings wrench icon, to open the Advanced Settings form in the right pane. This form handles vendor specific executable files.
Input the path for each license manager’s executable file, e.g.: lmutil.exe for FlexLM. This is the executable file that will be used by default for each FlexLM port, unless explicitly changed in the port’s command lines (see above).
OpenLM Broker Log levels: Set the log file’s notification level; i.e.: Should it only present Error messages or more verbose (‘ALL’) information.
BROKER TROUBLESHOOTING (A): Setting the Broker’s Character set
At times we have witnessed cases in which the OpenLM Broker and Server were correctly apparently configured, and connectivity between these two modules was fine, but no usage information was presented in the EasyAdmin web application. The cause for this malfunction was a mismatch between the license server’s character set definitions, and those of the OpenLM Broker. Please follow the procedure below to verify the Character set
1. Close the broker configuration tool
2. Open a cmd prompt window and type : chcp. you will get an output : The output should be similar to Active code page: 850 . This is your machine’s Character set.
3. Locate the machine’s Character set in this table. The Character set encoding can be seen on the left column of the table, e.g. in this case IBM850
4. Open the broker.xml file in the Broker installation folder. This file is normally located under:
C:\Program Files (x86)\OpenLM\OpenLM Broker
5. Change the <charset> parameter of the corresponding port in the broker.xml file, e.g.: <charset>IBM850</charset>
6. Open the broker configuration tool again. Execute the “Data inquiry” command, and verify that the output format is correct.
BROKER TROUBLESHOOTING (B): USING THE EASYADMIN WEB APPLICATION:
Open the EasyAdmin web application.
Click EasyAdmin Start → Widgets→ License servers. The “License Servers” window appears. Verify that the configured license managers appear on the list.
A green circle node indicates an active connection to a license server.
Click the + icon to expand the server indicator and view Broker related information:
NO BROKER: OpenLM server did not receive any information from broker. No broker was installed on the license server.
Up X days, Y hours, Z minutes: broker is up and running successfully. Time provided is how long the license manager is up, (since broker sampling)
BROKER DOWN: broker is installed but does not send information to the OpenLM server (license server indicator also becomes Yellow).
LM DOWN: License manager on this port is not working properly (license server indicator also becomes Yellow).
TIME DIFF ERROR: The time configured in the OpenLM server and the time received by the broker is not synchronized.
BROKER SYNC – while the openlm server is in offline mode the broker stores the information until reconnect to the openlm server. When the messages buffered are send to OpenLM server after the connection recovers the broker status will be BROKER SYNC.
NOT CONFIGURED/UNKNOWN – information interrupted. Broker is active but OpenLM does not get any information from the relevant port.