MATLAB: How to combine a Network Named User license with a Concurrent license on the same license server

MATLAB

I would like to combine a NNU with a Concurrent license, in order to allow the specified users access to the Concurrent toolboxes. How do I combine a Network Named User (NNU) license with a Concurrent license on the same license server?

Best Answer

The process of combining an NNU license with a Concurrent license involves three steps:
1) Concatenate license files on server.
2) Specify users in options file.
3) Set up license file on client.
NOTE: Product dependencies must be met on a single license. For example, if toolbox B requires toolbox A, then toolbox A must exist on the same license as toolbox B.
1) Concatenate license files on server
Verify that both license files were generated for the correct Host ID of the license server.
If the license files were generated for different Host IDs, you will need to generate a new license file with the correct Host ID.
For instructions, see:
How do I transfer a MATLAB license to a new computer?
Once both licenses are generated to the same Host ID, combine both license into one license file so that the INCREMENT lines containing the USER_BASED tag are listed immediately after the SERVER and DAEMON lines of the Concurrent license file.
NOTE: If you are using Windows, do not use Notepad to edit license files or options files. Instead, use WordPad or a programmer's text editor of your choice. Do not save files in Rich Text Format. Instead, save files as plain text with a file extension .dat or .lic.
The SERVER and DAEMON lines are created during installation of the network license manager.
You will need to install the network license manager to get obtain these lines, or add them manually.
For instructions, please see the following support article:
Why do I get "License Manager Error -13"?
Example of a concatenated license file for Linux/Mac (R2011a and later):
SERVER myhost 001abcd45689 27000
DAEMON MLM /usr/local/matlab/etc/MLM
#
INCREMENT ... USER_BASED....
INCREMENT ... USER_BASED....
#
INCREMENT ... Concurrent....
INCREMENT ... Concurrent....
INCREMENT ... Concurrent....
For R2011a and later, the DAEMON line should be:
DAEMON MLM /usr/local/matlab/etc/lm_matlab
Network Named User licenses require an options file. You must specify the path to the options file at the end of the DAEMON line.
Example for Linux/Mac:
DAEMON MLM /usr/local/matlab/etc/MLM options=/usr/local/matlab/MLM.opt
Example for Windows:
DAEMON MLM "C:\Program Files\MATLAB\etc\mlm.exe" options="C:\Program Files\MATLAB\etc\win32\MLM.opt"
2) Specify users in options file
Since there will be duplicate INCREMENT lines in the concatenated license file for the products, you'll need to specify which toolboxes in the NNU license belong to your users. You will also need to specify which toolboxes the users are not supposed to access from the concurrent license. For example, if the license file is setup the following:
INCREMENT MATLAB MLM 19 01-jan-0000 6 ... asset_info=123456
INCREMENT MATLAB MLM 19 01-jan-0000 6 ... asset_info=567890
where the first line is the Concurrent license, and the second belongs to the NNU license, then you would make the options file (MLM.opt) read as follows:
GROUP Smiths arourke jmarr morrissey mjoyce
EXCLUDE MATLAB:asset_info=123456 GROUP Smiths
INCLUDE MATLAB:asset_info=567890 GROUP Smiths
NOTE: The EXCLUDE lines prevents the group "Smiths" from accessing the concurrent MATLAB. Otherwise the license server distributes keys without discretion.
Once you have made changes to the license and options file, restart the network license manager to enact these changes.
3) Set up license file on client
Once the license server has been setup, you may need to change the license file on the MATLAB client so that it can obtain the correct license.
If you are using R2008a or higher, or if your client is installed on a Windows based machine, you will not need to make any changes.
If you are using a Mac, Linux, or Unix client with R2007b or below, you will need to change the license file on the client.
By default, the license file is located in the following folder:
$MATLAB/etc/license.dat (where $MATLAB is the installation folder on the client).
This file should be changed to the following format:
SERVER <hostname> <hostID> <port#>
USE_SERVER
The SERVER line should be identical to the server's concatenated license file.
Once you have completed these changes, the users should be able to draw from both licenses.
If you need assistance, please contact Installation and Licensing support:
NOTE: When creating a service request, please send your concatenated license file, options file, and the error message from the client.