Open Inventor is protected by a license key mechanism limiting its usage to specified computers or network environments based on commercial agreements. In this chapter, we explain how to setup the licensing for the different licensing cases.
Overview
Your license(s) of Open Inventor and associated extensions have been designed to run on a specific hardware configuration and used by a specified number of users. You might have purchased either node-locked licenses, which are individually bound to identified equipment, or a floating license, which is to be installed on a specified number of single computers driven by a license server.
Each type of license needs to be activated to get a Certificate License File (also called password) which you will install on your machine.
The Open Inventor licensing mechanism uses the FLEXnet technology, by Flexera.
Note: the hostID was called the ComputerID in versions of Open Inventor prior to 8.6.
- Setting up a nodelock license
- Setting up a floating license environment
Setting up a node-locked license
Node-locked licenses are licenses which allow you to use Open Inventor on an identified computer. Designated equipment(s) are identified by a hostID.
Getting the hostID
To activate your node-locked license, you need the hostID of your computer.
Note: The ComputerID displayed in the Open Inventor V8.x License Manager (Ladmin) does not match the FlexNet hostID. Do not use this value as hostID. The Ladmin tool is now deprecated.
Requesting your license key
Once you have the hostID, you need to activate your license to get a Certificate License file (also called password) which you will install on your machine. If you have not activated your license yet, please consult Licensing – Activate Open Inventor Licenses documentation.
Installing your Certificate License
The provided license file must be copied in the <OIVHOME>/License/password.dat or <OIVHOME>/arch*release/license/password.dat directory in order to unlock the product.
Where OIVHOME is the installation path of the Open Inventor package.
Setting up a floating license environment
Overview
Read this section only if you have purchased a floating license for your site where a single license server provides the license key for several users located on other machines of the same network environment. Standalone licenses also called nodelock licenses, application password licenses and temporary licenses are not managed using this mechanism.
FEI uses the FLEXnet licensing option to support floating licenses. In this scenario, a site purchases a specific number, N, of Open Inventor licenses. The FLEXnet license server tracks the licenses being used and allows simultaneous use of up to N instances of the Open Inventor software. The advantage of this approach is that, unlike standard Open Inventor licensing, Open Inventor is not locked to a specific computer, but can be run on any computer that can communicate with the license server.
A small set of FLEXnet-related files are provided for managing the FLEXnet licensing. These files must be copied onto the system to where the license server will be run. The license server can be run on the same system where Open Inventor is installed, but it doesn't have to be.
One of the supplied files, lmgrd ("license manager daemon"), is a FLEXnet executable that is responsible for starting the vendor daemon, which does the actual checking in and out of licenses specific to that vendor. The supplied vendor daemon, mcslmd ("FEI license manager daemon"), handles the requests for licenses from the Open Inventor application programs.
There is a FLEXnet license file that is read by the server. This license file contains information indicating which products are licensed and how many licenses are allowed for each.
In addition, each Open Inventor installation has a separate license file which indicates the name of the FLEXnet license server.
The sections below will provide the basic technical details of installing and managing a FLEXnet license server.
For complete technical details regarding FLEXnet itself, please check official Flexera Software documentation, available here.
Getting Started
The first thing to do is decide on which computer you wish to run the FLEXnet license server. This system should be "visible" from any system that might want to request a license. It should also be highly reliable.
The server can be installed on a computer on which Open Inventor is installed, but it does not have to be.
It is possible to do FLEXnet licensing in a heterogeneous environment. That is, the server and Open Inventor can be running on different operating systems. For instance, the FLEXnet server could be on a Linux box, with the Open Inventor users running Open Inventor on a Windows platform.
If your site already has a FLEXnet license server running that is used for licensing other vendors' products, this may affect where and how you decide to configure the Open Inventor license server. See, for example, the chapter "Managing Licenses from Multiple
Software Publishers" in the FLEXnet Licensing End User Guide.
For the rest of this discussion, we will assume that you will be setting up a license server used only for licensing Open Inventor.
Once you have selected the server machine, if you are not going to run the server from the Open Inventor installation directory (i.e., from <oiv_install_dir>/<architecture>/license), you will need to copy the FLEXnet-related files provided by FEI to that system into an empty directory.
Suggested server directory name:
oiv_flexnet
The FLEXnet files are provided in:
<oiv_install_dir>/<architecture>/license
On the Open Inventor download pages, FLEXnet files are also available for platforms other than the one on which you will be running Open Inventor.
Open Inventor 9.9.x requires FLEXnet tools 11.14.0.0.
Open Inventor 10.x to 10.2.x requires FLEXnet tools 11.14.0.0.
Open Inventor 10.3.x and above requires FLEXnet tools 11.16.0.0.
Instructions for installing and configuring the server are provided in below.
Getting the hostID
In order to generate a FLEXnet license, we will need hostID of the system on which the license server is running/will run
Linux
- On the system where the server is running/will run, in a command shell, go to the directory where the server will be installed:
cd <server_install_dir>
- To get the host ID, execute the lmutil program as follows:
./lmutil lmhostid
The output will look like
lmutil - Copyright (c) 1989-2005 Macrovision Europe Ltd. and/or Macrovision Corporation. All Rights Reserved. The FLEXlm host ID of this machine is "001422505387"
- To get the IP address (optional):
./lmutil lmhostid -internet
- Save the lmhostid output (or IP address).
Windows
- On the system where the server is running/will run, run LMTOOLS. It should be located in:
<server_install_dir>\lmtools.exe
- Click on the Systems Settings tab.
- The Ethernet Address field contains the required hostID.
- The IP Address field contains the optional IP address.
- Save those values
Requesting your license key
Once you have the hostID, you need to activate your license to get a Certificate License file (also called password) which you will install on your machine. If you have not activated your license yet, please consult Licensing – Activate Open Inventor Licenses documentation
Installing the Linux FLEXnet Server
At this point, we assume that the FLEXnet files are in their desired location:
- either in the default location, <oiv_install_dir>/<architecture>/license
- or have been copied to <some_path>/oiv_flexnet directory on the system where the server will run.
The vendor daemon mcslmd must be in the same directory as lmgrd.
The command to start the server looks like:
./lmgrd -c <server_license_file> -l [+]<debug_log_path>
where:
- <server_license_file> is the full path to the server license file, and
- <debug_log_path> is the path to the debug log file.
Prepending the + character the the log file name causes log entries to be appended.
The following is the suggested command to use:
./lmgrd -c passwordServer.dat -l +flexnet.log
TIP: It can be convenient to set up the server so that it is started automatically upon system reboot. This would involve editing the system boot script. See the FLEXnet Licensing End User Guide, chapter "The License Server Manager" for details.
Installing the Windows FLEXnet Server
At this point, we assume that the FLEXnet files are in their desired location:
- either in the default location, <oiv_install_dir>\<architecture>\license
- or have been copied to <some_path>\oiv_flexnet directory on the system where the server will run.
FLEXnet uses a program called lmgrd to manage licenses. On Windows, FLEXnet provides a GUI called LMTOOLS that allows one to configure lmgrd to run as a service. This is the preferred method of configuring FLEXnet and is outlined below.
NOTE: To configure a license server as a service, you must have Administrator privileges.
The vendor daemon mcslmd.exe must be in the same directory as lmgrd.exe.
Starting the Server (Windows)
Installing the Server License File
You should have received an email containing FLEXnet server license file from the FEI's License administrator.
Here's an example of server license file:
SERVER XP-PANGOLIN2 001234567890 VENDOR mcslmd FEATURE OpenInventor mcslmd 6.0 permanent 2 SIGN=9F667CAD92 FEATURE OpenInventorSDK mcslmd 6.0 permanent 2 SIGN=1E9D961EEA FEATURE VolumeVizLDM mcslmd 6.0 permanent 2 SIGN=C1AF9459F8 FEATURE VolumeViz mcslmd 6.0 permanent 2 SIGN=873B4AC82 FEATURE MeshViz mcslmd 6.0 permanent 2 SIGN=27291E2020 FEATURE HardCopy mcslmd 6.0 permanent 2 SIGN=22131C30D0 FEATURE ScaleViz mcslmd 6.0 permanent 2 SIGN=A2E3800ECA
Linux
On Linux, the server license file is specified when the server is started.
- Decide where you want to place the server license.Recommended location:
<server_install_dir>/passwordServer.dat
- Using a text editor, copy the server license strings into that file.
- Start the server:
./lmgrd -c passwordServer.dat -l +flexnet.log
Windows
- Decide where you want to place the server license file.Recommended location:
<server_install_dir>\passwordServer.dat
- Using a text editor, copy the server license strings into that file.
- Run LMTOOLS, click on the Config Services tab, then specify the "path to the license file".
- For this change to take effect, stop and restart the server using the Start/Stop/Reread tab.
Installing the Client License Files
Each system that might request an Open Inventor license from the FLEXnet license server must have an Open Inventor license file.
Here's an example client license file:
SERVER XP-PANGOLIN2 ANY USE_SERVER
On each client system, copy the client license info to the Open Inventor license file.
The default (and recommmended) location is:
<oiv_install_dir>/License/password.dat
This can be changed by setting the VSG_LICENSE_FILE environment variable to a new path, including the file name. Once this variable is set, Open Inventor automatically looks for the license file in the specified location. If Open Inventor cannot find the license file, the user is presented with a dialog that asks for the license information.
Nomad Licensing / Borrowing
To use a FLEXnet floating license on a system that is not always connected to the license server, you will need to "borrow" a license while you are connected to the server, then disconnect from the server. This kind of licensing is what we call "nomad" licensing. Below are the detailed instructions. We will assume that standard FLEXnet licensing, i.e., not borrowing, is already working correctly.
Linux
- On the client machine, in a command shell, go to the directory where the FLEXnet utilities are installed. By default, these utilities are found on the client machine in: <oiv_install_dir>/<architecture>/license.cd <oiv_install_dir>/<architecture>/license
- To initiate borrowing, execute the lmutil program on the client as follows:lmutil lmborrow mcslmd <enddate> <time>where:<enddate> <time> Enddate is the date the license is to be returned in dd-mmm-yyyy format. Time is optional and is specified in 24-hour format (hh:mm) in the FLEXenabled application local time. If time is unspecified, the checkout lasts until the end of the given end date.For example:lmutil lmborrow mcslmd 16-jan-2007 13:00
To print information about borrowed features, issue the following command on the machine from which they are borrowed:
lmutil lmborrow -status
Windows
- Run LMTOOLS on the client machine. By default, LMTOOLS is found on the client machine in: <oiv_install_dir>/<architecture>/license.
- Click on the Borrowing tab.
- Specify a return date.
- Optional, specify the vendor name (mcslmd).
- Press the Set Borrow Expiration button.
- Start your Open Inventor Application, then use all of the extensions that you want to borrow.
- Disconnect from the network.
- Exit your Open Inventor Application and confirm that you can restart it and use all of the borrowed modules.
You can check how many licenses are checked-in or out by pressing the List Currently Borrowed Features button of the Borrowing tab of the LMTOOLS application.
Additional controls can be set directly into the license string. The most important are:
- Limit the number of token that can be borrowed:
Examples: The customer want to keep 60 tokens over his 100 tokens, so only 40 tokens can be borrowed.
Add a BORROW_LOWWATER line:BORROW_LOWWATER | Product | 60
- Limit the number of days a token can be borrowed:
Examples: One week (7days x 24hours = 168hours). Add a MAX_BORROW_HOURS line:
MAX_BORROW_HOURS Product 168
Notes: If not specified, default value is one year. - Specify who is allowed to borrow:
- a user
INCLUDE_BORROW Product USER Jim - a group of users
INCLUDE_BORROW Product GROUP project_dev - a computer
INCLUDE_BORROW Product HOST hots_name - a group of computers
INCLUDE_BORROW Product HOST_GROUP computer_group
- a user
- Specify who is not allowed to borrow:
- a user
EXCLUDE_BORROW Product USER Jim - a group of users
EXCLUDE_BORROW Product GROUP project_dev - a computer
EXCLUDE_BORROW Product HOST hots_name - a group of computers
EXCLUDE_BORROW Product HOST_GROUP computer_group
- a user
Defining groups
- Group of users:
GROUP project_dev Jim Mike Bob - Group of computers:
HOST_GROUP computer_group host1 host2 host3
Reserving tokens
Tokens can be reserved for specific users groups or computers.
- Reserve 10 tokens for an user:
RESERVE 10 Product USER Jim - Reserve 10 tokens for a group of users:
RESERVE 10 Product GROUP project_dev - Reserve 10 tokens for a computer:
RESERVE 10 Product HOST host1 - Reserve 10 tokens for a group of computers:
RESERVE 10 Product HOST_GROUP computer_group
Setting Access Permissions
You can control who is allowed to use a product using the INCLUDE EXCLUDE commands.
- Who is allowed to use a product :
INCLUDE Product USER Jim
Can be used for GROUP, HOST and HOST_GROUP as described above. - Who is not allowed to use a product :
EXCLUDE Product USER Mike
Troubleshooting
Refer to the FLEXnet documentation. The FLEXnet Licensing End User Guide contains a troubleshooting appendix.
Finally if you need assistance getting your FLEXnet licenses installed and operational, please contact the technical support.