8. License server installation


8.1. Windows

In order to use a purchased MOSEK license you must:

  1. Install the license server as described in Section 8.1.1.
  2. (Optional): If you want to use the license from a client computer other than the one running the license server, then you should configure each client to check out the license from the license server. See Section 8.1.2 for details.

8.1.1. License server installation

Please follow the steps below to install a purchased license or to restart the license server with an new license file. Note: Installing the license server will remove any existing MOSEK license server services.

  • First make sure you have administrative privileges.
  • (Optional): If you have purchased a dongle, insert this. If you have not already installed the dongle, do so using the instructions in Chapter 6.
  • In the start menu select Mosek Optimization tools 6.0 and click on Install MOSEK license server to start the license installation wizard.

  • Click Next.
  • Click Browse and select the license file.

  • Click Next to install the license server.
  • Click Finish.
  • Finally, you will be asked to log out and log in again. All users on the license server must do so before they can run MOSEK.

MOSEK can now be used by any user on the computer where the license server is installed. To configure MOSEK to run on a computer other than the license server please follow the instructions in Section 8.1.2.

To share a single license between multiple computers who are not on the same network you must use a dongle. See Chapter 6 for details.

The above procedure describes how to install the license server using the MOSEK license server installation tool. Alternatively the FLEXlm installation tool lmtools may be used. For information about this tool and the many other options of FLEXlm please see Flexlm end user manual.

8.1.2. Using MOSEK from a networked client computer

A MOSEK license can be used from any computer that can connect to the license server via a network including the license server itself. The license server should not be installed on every client computer. To use your MOSEK license from a computer other than the license server, follow the procedure below:

  • Install MOSEK as described in Chapter 2.
  • Replace the

    <INSTALL_DIR>\mosek\6\licenses\mosek.lic
    

    file with your permanent license file where <INSTALL_DIR> is the location of your MOSEK installation.

  • Verify that MOSEK can now check out a license from the server by performing the step described in Section 8.1.2.2.

MOSEK will then check out the license from the license server. Please note that on the client machine the license files only function is to identify the name of the license server. For information on how to change the license server used please see Section 8.1.2.4.

8.1.2.1. License file search path

The location of the license file used is controlled by the

MOSEKLM_LICENSE_FILE

environment variable. The default value for a Windows installation performed with the automatic installation tool is

<INSTALL_DIR>\mosek\6\licenses\mosek.lic

For information on changing this variable see Section 8.1.2.4.

8.1.2.2. Verifying that the license system works

In the start menu select Mosek Optimization tools 6.0 and click on Test license system. The message

************************************
A license was checked out correctly.
************************************

will appear if the license system works correctly. If the license does not check out correctly please contact MOSEK support at support@mosek.com. Please include the error messages in your email.

8.1.2.3. Controlling port usage and firewall access

The MOSEK license server installation automatically creates exceptions for the programs

  • lmgrd.exe and
  • MOSEKLM.exe

in the “Windows firewall”. This is required to access the license server from a remote computer. For other firewalls than the standard “Windows firewall” manual configuration may be required.

The license server consists of two daemons

  • lmgrd.exe: The license server daemon running as a service,
  • MOSEKLM.exe: A daemon started by lmgrd

each of which needs an open port in the firewall. To specify which port number each service should use you must change the license file. The first two lines in a standard MOSEK license files looks like this:

SERVER my_server 123456789ABC
VENDOR MOSEKLM

To instruct lmgrd.exe to use port 27000 and MOSEKLM.exe to use port 3084 change the first two lines of the license file to:

SERVER my_server 123456789ABC 27000
VENDOR MOSEKLM port=3084

After changing the license file reboot your computer for the changes to take effect and configure your firewall to allow access to the chosen port numbers which in this case are 27000 and 3084.

Finally, it is a good idea to check if the port is open by using the telnet command as follows

telnet my_server 27000

on the client computer(s). You will get an error message similar to this:

Connecting To birkende...Could not open connection to the host,
   on port 27000: Connect failed

if the port is not open.

Also see the Flexlm end user manual for more information.

8.1.2.4. Locating the license server / reducing checkout overhead

In the following section we describe how to connect to the license server. We will also discuss how to reduce license checkout overhead by configuring the way a client machine locates the license server. In general this overhead is very low and will have an impact only if the license is checked out frequently.

Per default the client computer running MOSEK locates the license server by reading the first line of the license file, which e.g look like this:

SERVER myserver 123456789ABC

In this case myserver is the license server used and the port number will be determined automatically. The name of the server can be changed at any time by manually editing the license file. The last number is the MAC address which can not be changed by the user. The location of the license file to read the license server name from is determined by the environment variable:

MOSEKLM_LICENSE_FILE = PATH_TO_LICENSE

where PATH_TO_LICENSE is the location of your permanent license file. When using the automatic installer MOSEKLM_LICENSE_FILE is automatically set to

MOSEKLM_LICENSE_FILE = <INSTALL_DIR>\mosek\6\licenses\mosek.lic

Alternatively you may use the syntax

MOSEKLM_LICENSE_FILE = port@host

or

MOSEKLM_LICENSE_FILE = @host

where port is the port that lmgrd is running on and hostname is the hostname or IP-address of the license server. If only host is given the port will be determined automatically (there is an overhead associated with this). As an example consider setting

MOSEKLM_LICENSE_FILE = 27000@server01

where the default port 27000 used by lmgrd is used on the server named server01. Please note that if port 27000 is not free another port number may be used by lmgrd. See Section 8.1.2.3 for instructions on how to manually set the port number used by lmgrd.

The most efficient way to specify the license server is

MOSEKLM_LICENSE_FILE = port@ip

where IP is the IP-address of the license server. This way the client machine will not need to search for the correct port number or do a DNS lookup to locate the IP-address.

For instructions on setting the operation system environment variables see Appendix B.

8.2. LINUX / UNIX / MAC OSX

To use a floating MOSEK license you must:

  1. Install LSB 3.0 or later on the server if not already installed. This package is called lsb in most linux distributions.
  2. Install the license server (Section 8.2.1).
  3. Set the MOSEKLM_LICENSE_FILE environment variable on any machine on witch you want to run MOSEK. (Section 8.2.2).

8.2.1. License server installation

This section discusses how to install the license server on LINUX / UNIX / MAC OS X. Two files are required to run the license server:

  • lmgrd: The license server daemon executed by the user.
  • MOSEKLM: A daemon started by lmgrd.

These files can be found in:

<INSTALL_DIR>/mosek/6/tools/platform/<PLATFORM>/bin/

To start the license server run the following commands:

cd <INSTALL_DIR>/mosek/6/tools/platform/<PLATFORM>/bin/
./lmgrd -c PATH_TO_LICENSE -l lmgrd.log

Where PATH_TO_LICENSE is the path to your license file. The license server will save a log file in the location given by the -l command line parameter. If the license server was started successfully the lmgrd.log file will look similar to this:

cat lmgrd.log
15:03:09 (lmgrd) -----------------------------------------------
15:03:09 (lmgrd)   Please Note:
15:03:09 (lmgrd) 
15:03:09 (lmgrd)   This log is intended for debug purposes only.
15:03:09 (lmgrd)   In order to capture accurate license
15:03:09 (lmgrd)   usage data into an organized repository,
15:03:09 (lmgrd)   please enable report logging. Use Macrovision's
15:03:09 (lmgrd)   software license administration  solution,
15:03:09 (lmgrd)   FLEXnet Manager, to  readily gain visibility
15:03:09 (lmgrd)   into license usage data and to create
15:03:09 (lmgrd)   insightful reports on critical information like
15:03:09 (lmgrd)   license availability and usage. FLEXnet Manager
15:03:09 (lmgrd)   can be fully automated to run these reports on
15:03:09 (lmgrd)   schedule and can be used to track license
15:03:09 (lmgrd)   servers and usage across a heterogeneous
15:03:09 (lmgrd)   network of servers including Windows NT, Linux
15:03:09 (lmgrd)   and UNIX. Contact Macrovision at
15:03:09 (lmgrd)   www.macrovision.com for more details on how to
15:03:09 (lmgrd)   obtain an evaluation copy of FLEXnet Manager
15:03:09 (lmgrd)   for your enterprise.
15:03:09 (lmgrd) 
15:03:09 (lmgrd) -----------------------------------------------
15:03:09 (lmgrd) 
15:03:09 (lmgrd) 
15:03:09 (lmgrd) FLEXnet Licensing (v11.4.0.0 build 31341) started on kolding (linux) (5/14/2007)
15:03:09 (lmgrd) Copyright (c) 1988-2006 Macrovision Europe Ltd. and/or Macrovision Corporation. All Rights Reserved.
15:03:09 (lmgrd) US Patents 5,390,297 and 5,671,412.
15:03:09 (lmgrd) World Wide Web:  http://www.macrovision.com
15:03:09 (lmgrd) License file(s): /home/sandvik/kolding.lic
15:03:09 (lmgrd) lmgrd tcp-port 27000
15:03:09 (lmgrd) Starting vendor daemons ... 
15:03:09 (lmgrd) Started MOSEKLM (internet tcp_port 44950 pid 23251)
15:03:09 (MOSEKLM) FLEXnet Licensing version v11.4.0.0 build 31341
15:03:09 (MOSEKLM) Server started on kolding for:       PTS
15:03:09 (MOSEKLM) PTOC         PTON            PTOM
15:03:09 (lmgrd) MOSEKLM using TCP-port 44950
In this case lmgrd is running on port 27000 and MOSEKLM is running on port 44950.

8.2.2. Checking out a license from the server

To run MOSEK (from the license server or a remote machine) you must set the environment variable

MOSEKLM_LICENSE_FILE = PATH_TO_LICENSE

where PATH_TO_LICENSE is the location of your permanent license file, e.g.

/home/me/mosek/6/licenses/mosek.lic

On the client machine the only function of the license file is to identify the host name of the license server. The first line of the license file should be similar to:

SERVER myserver 123456789ABC

In this case MOSEK will try to use myserver as a license server. The name of the server can be changed at any time by manually editing the license file. Alternatively you may use the syntax

MOSEKLM_LICENSE_FILE = port@host

or

MOSEKLM_LICENSE_FILE = @host

where port is the port that lmgrd is running on and hostname is the hostname or IP address of the license server. If only host is given the port will be determined automatically. As an example consider setting

MOSEKLM_LICENSE_FILE = 27000@server01

where the default port 27000 used by lmgrd is used on the server named server01. Please note that if port 27000 is not free another port number may be used by lmgrd. See Section 8.2.6 for instructions on how to manually set the port number used by lmgrd.

8.2.3. Verifying that the license system works

Run the commands

cd <INSTALL_DIR>/mosek/6/tools/platform/<PLATFORM>/bin/
./msktestlic

The message

************************************
A license was checked out correctly.
************************************

appears on successful license checkout.

8.2.4. Starting lmgrd on boot.

For security reasons lmgrd should not run as root. To start lmgrd at boot time we recommend that you add the following command to your startup script:

su username -c "umask 022; lmgrd -c path_to_license_file -l lmgrd.log"

#   Where:
#     username:  is a normal, non-root, non-privileged user
#
#     lmgrd: is the complete path and file name to the lmgrd binary
#
#     path_to_license_file:   is the complete path and file name to
#                             the license file
#
#    log:       is the complete path and file name to the debug log file

8.2.5. Speeding up license checkout

The most efficient way to specify the license server is

MOSEKLM_LICENSE_FILE = port@ip

where IP is the IP-address of the license server. This way the client machine will not need to search for the correct port number or to do a DNS lookup to locate the IP-address.

8.2.6. Accessing the license server through a firewall

The license server consists of two daemons

  • lmgrd: The license server daemons,
  • MOSEKLM: A demon started by lmgrd

Both needs an open port in the firewall. To specify which port number each daemon should use you must change the license file. The first two lines in a standard MOSEK license file look like:

SERVER my_server 123456789ABC
VENDOR MOSEKLM

To instruct lmgrd to use port 27000 and MOSEKLM to use port 3084 change the first two lines of the license file to:

SERVER my_server 123456789ABC 27000
VENDOR MOSEKLM port=3084

Restart the license server and configure your firewall to allow access to the chosen port numbers which in this case are 27000 and 3084.

Finally, it is a good idea to check if the port is open by using the telnet command as follows

telnet my_server 27000

on the client computer(s). You will get an error message similar to

Connecting To birkende...Could not open connection to the host,
   on port 27000: Connect failed

if the port is not open. If open telnet will connect with no error message.

See also the Flexlm end user manual for more information.

Wed Feb 29 16:22:55 2012