MATLAB Installation Guide for Unix |
Configuring Redundant License Servers
If a large number of licenses are governed by a single license server, failure of the server becomes a major event. To prevent problems, you may want to set up redundant servers so that, if one server goes down, the license manager can still function.
In the redundant server configuration, three machines are designated to be license servers. All three machines must be running at the time the license manager is started. However, once the license manager is running, only two machines need to be running at any time; this is called a quorum. As long as a quorum exists, the license manager can continue to run.
Selecting Servers
The first step in configuring the license manager is choosing the servers. The servers should be chosen with the following criteria in mind:
License Files in Redundant Configurations
Once you have chosen the servers, determine the host IDs of each server and provide them to the MathWorks when you request your License File. The MathWorks will generate an appropriate License File. For more information about these topics, see Determining Your Host ID and Obtaining or Changing Your License File.
The following example shows a License File that supports redundant servers. Note that the License File has three SERVER
lines that identify each of the three redundant servers:
# MATLAB license passcode file for use with FLEXlm # LicenseNo: 12345 HostID: 7260d091 # HostID: 7275caa1 # HostID: 72701448 SERVER pooh 7260d091 27000 SERVER piglet 7275caa1 27000 SERVER rabbit 72701448 27000 DAEMON MLM /usr/local/matlab6p5/etc/lm_matlab INCREMENT TMW_Archive MLM 13 01-jan-0000 0 BC7CC831F0F7B7C8D488 \ VENDOR_STRING="b" HOSTID=DEMO SN=12345 INCREMENT MATLAB MLM 13 01-jan-0000 1 2C0CF621EF8554F42D11 \ DUP_GROUP=UH SN=12345 INCREMENT SIMULINK MLM 13 01-jan-0000 1 7C2CD651802358GAB571 \ DUP_GROUP=UH SN=12345 INCREMENT Identification_Toolbox MLM 13 01-jan-0000 1 \ 9CDC162D90C0FF7C7C30 DUP_GROUP=UH SN=12345
Starting License Manager Daemons in Redundant Configurations
To run the three license managers for this example interactively, log in to each machine with any valid username, but not as superuser. To maintain program security, you cannot start a license manager if you are logged in as superuser. Run the lmstart
script.
For example, if the MATLAB root directory is /usr/local/matlab6p5
, use this procedure:
If you change the definition of LM_LICENSE_FILE
in .matlab6rc.sh
, you need to edit the license manager options file $MATLAB/etc/lmopts.sh
to change the LM_FILE
variable assignment. For example, if you change the location of the License File to /usr/licenses/license.dat
, use the assignment
in the license manager options file.
Wait for the license manager daemons on the three machines to synchronize with each other. This may take a few minutes. If, for some reason, the license manager daemons do not connect, take the daemons down on each machine, and rerun the procedure. Network traffic may affect the synchronization, so it may require several attempts to establish a proper connection. Again, all three machines must connect for the license manager to begin serving keys. Once the daemons are up and connected on all three machines, only two machines are needed for a quorum; the loss of any one machine will not cause any licenses to be revoked.
Starting the License Manager at Boot Time
If you want the license manager to start automatically when rebooting the machine, place a Bourne shell code fragment into the appropriate boot script by following the directions in Table 1-4, Editing UNIX Boot Scripts,. You must supply a valid user name (not superuser) when configuring the boot script.
Note that, on each server, a link must exist between /etc/lmboot_TMW
and $MATLAB/etc/lmboot
. This link is normally created during the installation process. However, when running multiple license servers, some or all of the systems may not have MATLAB installed. To create this link on a given server, first log in to the server as root
, and then enter the following UNIX commands:
Determining Your Host ID | Troubleshooting |