Licensing

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.

Note: temporary licenses can be sent for evaluation purpose. These licenses are not locked to a specific computer but are time limited. Please go to the trial version request page for getting a trial license.


Licensing overview

Setting up a nodelock license

Setting up a floating license environment


Licensing 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 requires a specific License Key (so called password) to be activated. In order to get this password, we need you to provide us with the hostID of your computer for node-locked licenses, or the hostID and hostname of your license server for floating licenses.

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 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, we need the hostID of your computer.

  1. Open a command console on Windows or a command shell on a Unix platform
  2. Disable all temporary network connections (wlan card, bluetooth, docking station, …)
  3. Go to the directory (depending on the language binding and platform installed):
    <OIV_home>/License/FLEXnet
    or
    <OIV_home>/arch-<OIV_arch>-release/license/FLEXnet
    (where <OIV_arch> is the platform architecture for instance Linux-x86_64-gcc41)
  4. To get the hostID, execute the command ‘lmhostid’

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, go to our online password delivery center and fill in your details, Open Inventor and extensions license numbers, along with your hostID.

Installing the license key

You will receive the license keys by email as well as the installation instructions. 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, see the Web site of Flexera Software, supplier of the FLEXnet licensing software (www.flexerasoftware.com):

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. The FLEXnet documentation from Acresso can help you with this decision. See, for example, the chapter "Managing Licenses from Multiple Vendors" 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.5.0 requires FLEXnet tools 11.12.1.1. 

Instructions for installing and configuring the server are provided in below.

Getting the hostID and host name

In order for FEI to generate a FLEXnet license, we will need the following information about the system on which the license server is running/will run:

  1. its host name (or IP address), and
  2. its host ID.

Unix

1. 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>

2. 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"

3. To get the hostname, you can use any of the following commands:

uname -a
hostname
lmutil lmhostid -hostname

4. To get the IP address (optional):

lmutil lmhostid -internet

5. Save the lmhostid output and the hostname (or IP address).

Windows

1. On the system where the server is running/will run, run LMTOOLS. It should be located in:

<server_install_dir>\lmtools.exe

2. Click on the Systems Settings tab.

  • The Computer/Hostname field contains the required host name.
  • The Ethernet Address field contains the required host id.
  • The IP Address field contains the optional IP address.

3. Save those values.

Requesting your license key

Once you have the hostID and host name, go to our online password delivery center and fill in your details, Open Inventor and extensions license numbers, along with your hostID and host name.

 

Installing the FLEXnet Server (UNIX)

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 FLEXnet Server (Windows)

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.

  1. Run LMTOOLS.
     
  2. Click the Configuration using Services radio button to select it.
     
  3. Click the Config Services tab.
     
  4. In the Service Name field, type the name of the service that you want to define.

    It is recommended that you use the name OIV License Manager.


Screenshot of steps 2 and 3

  1. In the Path to the lmgrd.exe file field, enter or browse to lmgrd.exe for this license server.

    In many cases the path will be:

    <oiv_install_dir>\<architecture>\license\lmgrd.exe.

  2. In the Path to the license file field, enter or browse to the license file for this license server.

    It is recommended that you copy the server license file to:

    <oiv_install_dir>\<architecture>\license\passwordServer.dat

  3. In the Path to the debug log file, enter or browse to the debug log file that this license server writes. For example, FLEXnet.log.

    (Prepending the debug log file name with the + character appends logging entries. The default location for the debug log file is the C:\WINDOWS\System32 folder. To specify a different location, make sure you specify a fully qualified path.)

    For most users, the following should be appropriate:

    +<oiv_install_dir>\<architecture>\license\flexnet.log

  4. (Optional) Click on the View Log button to display the log file. Check that no logging errors occur (i.e., log file is openable and it contains readable text). Click on the Close Log button to close the log file.
     
  5. To ensure that the license service is always running and automatically started upon system reboot, it is necessary to set the two checkboxes, Use Services and Start Server at Power Up, at the bottom of the dialog.
     
  6. To save the new OIV License Manager service, click the Save Service button.


Screenshot of steps 4, 5, 6, 7, 8, 9, and 10

Starting the Server (Windows)

Once the license manager service is configured, lmgrd is started by starting the service from the LMTOOLS interface:
  1. Run LMTOOLS if it is not already running. LMTOOLS appears with the Service/License File tab open.
     
  2. Click the Configuration using Services radio button.
     
  3. Select the service name from the list presented in the selection box.

    If you followed the recommendations above, the service name should be OIV License Manager.
     

  4. Click the Start/Stop/Reread tab.


Screenshot of steps 2, 3, and 4

  1. Start OIV License Manager by clicking the Start Server button.

The OIV License Manager license server should now be started and writing its debug log output to <oiv_install_dir>\<architecture>\license\flexnet.log.

NOTE: Any time you make a change to the server configuration, you should stop the server then restart it in order for the changes to take effect.

NOTE: Any time you make a change to the server password file, you should use the Start/Stop/Reread tab, and press the ReReadLicenseFile button. If the first time you press it, the operation fails, wait briefly (a minute or less), and try pressing it again.


Screenshot of step 5

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
            

Unix

On UNIX, the server license file is specified when the server is started.

  1. Decide where you want to place the server license.

    Recommended location:

    		<server_install_dir>/passwordServer.dat
    
  2. Using a text editor, copy the server license strings into that file.
     

Start the server:

lmgrd -c passwordServer.dat -l +flexnet.log

 

Windows

 

  1. Decide where you want to place the server license file.

    Recommended location:

    		<server_install_dir>\passwordServer.dat
    
  2. Using a text editor, copy the server license strings into that file.
     
  3. Run LMTOOLS, click on the Config Services tab, then specify the "path to the license file".
     
  4. For this change to take effect, stop and restart the server using the Start/Stop/Reread tab.

Installing the Client License Files (All Platforms)

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.

Unix

  1. 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
     

  2. 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

  1. Run LMTOOLS on the client machine. By default, LMTOOLS is found on the client machine in: <oiv_install_dir>/<architecture>/license.
     
  2. Click on the Borrowing tab.
     
  3. Specify a return date.
     
  4. Optional, specify the vendor name (mcslmd).
     
  5. Press the Set Borrow Expiration button.
  6. Start your Open Inventor Application, then use all of the extensions that you want to borrow.
     
  7. Disconnect from the network.
     
  8. 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
  • 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

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.

In addition the Open Inventor licensing FAQS answer to some common questions.

Finally if you need assistance getting your FLEXnet licenses installed and operational, please contact the technical support.