HLServer: Application Config

From Headus Docs

Jump to: navigation, search
Cover Page
About HLServer
Linux Server Setup
Windows Server Setup
OS X Server Setup
Server Config
Application Config
The Manager
Adding New Keys
Trouble Shooting
Download PDF
Applications using floating licenses are installed as they normally would be on the client workstations. Its perfectly OK to also use NFS or some similar network file system to share files.

When an application is run, and if no local key is found, the license server is contacted. If no local or floating licenses are available, the application will not start and the headus licensing GUI will start up.

If you ever need to start the licensing GUI directly, use one of the following ways:

  1. Run headus from the command line (Linux or OS X only).
  2. Run Start->Programs->Application->License (Windows only).

[edit] Newer GUI

Fig 1. Setting Server - New
Fig 1. Setting Server - New

These are the config instructions for applications built from about September 2017; see the section below for older applications.

If the user's workstation or laptop is on the same subnet as the license server, and you've configured HLServer with the default of "PORT 11668" in hlserver.conf, then they can click on the blue "?" button to search for the license server.

If the server can't be found, or is on a different subnet, then users will need to type the server IP address into the Server field, then click the blue "?" button to test the connection.

Once the server has been set, the "?" changes to a right arrow; it will have four different colors:

Server found, and click arrow to run HLManager.
Server found, licenses available, but user doesn't have HLManager access.
Server found, but no licenses available and no HLManager access.
No license server found at that address.

[edit] Older GUI

Fig 2. Setting Server - Old
Fig 2. Setting Server - Old

To get the older applications to talk to the license server, click on the Common Preferences button (see Fig 2). Enter host into the HLServer field (where host is the hostname or IP address of your license server). Click the Update button to check that the floating licenses have been found.

Note: Normally the host port number can be left off if you use the default of "PORT 11668" in hlserver.conf. If a different port has been used, or you are using older client applications, then it needs to be added to the hostname with a colon, as in host:port (e.g. "lserver:11668").

[edit] Environment Variable

If you are a systems admin wanting to set the license server host for all of your users, then you can use the HEADUS_HLSERVER environment variable as an alternate to the method described above. If installing onto OS X or Linux, you can put your setenv commands into /etc/csh.headus, and the start-up scripts will then run in that environment. An example /etc/csh.headus would look like:

 setenv HEADUS_HLSERVER lserver

Alternatively, put the name of the license server into a file called hlserver.txt, and put that into the "lib" folder where the client software (e.g. UVLayout) is installed. It should be in the same location as the empty keys.txt file. An example hlserver.txt would just say:


[edit] Application Restore

The link between the license server and applications is via connected TCP/IP sockets. This means that a connection has to be maintained at all times during the life of an application. If the connection is dropped, then the application loses its license, and the default action is for it to exit without warning.

Possible reasons for a broken connection are:

  1. Server crash/reboot. The server that allocates the floating licenses crashes, loses power, or is rebooted for some other reason.

  2. HLServer crash/restart. The floating license software, running on the server, crashes or is restarted for some other reason. Note: HLServer doesn't need to be restarted to activate changes made to the config or keys files; the hlmanager "reload" command should be used for this.

  3. HLServer boot. A user with hlmanager access has "booted" the license.
Fig 3. Setting Restore Directory
Fig 3. Setting Restore Directory

The restore function allows users to define a directory where all current work is saved when a license is lost, and the application can be restarted from this save point. Note: Currently only CySlice and associated products (.i.e PlyEdit, CySize, UVLayout) support the restore function.

To set the restore directory, each user needs to run the headus licensing GUI using one of the following ways:

  1. Run the application, click About, click Run Licensing GUI.
  2. Run headus from the command line (Linux or OS X only).
  3. Run Start->Programs->Application->License (Windows only).

Once the licensing GUI is running, click on the Common Preferences button (see Fig 3). A directory name can then be entered into the Restore Dir text field; hit <Enter> to save the change.

The restore directory should be on a local drive, not a networked drive/share, in case the loss of license is through a network problem or server reboot. The selected directory should also be one that's maintained through a reboot of the local system; RAM drives and temporary areas that are cleaned out on reboot shouldn't be used.

Fig 4. Application Restore Window
Fig 4. Application Restore Window

Once the restore directory has been defined, applications run from then on are protected by the restore function. If a license is lost, the application dies as per usual, but a restore window will then appear (see Fig 4).

If a user sees this window, they should first talk to a systems administrator to determine the cause of the loss of the license. If a server is down, they will need to wait until that is rebooted before trying to restore the application. If HLServer is down, that will need to be restarted.

When all services have been restored, the user can click on the Restore button; the application they were running will be restarted, and all saved work is reloaded. Once all that is up and running, the restore files can be removed with the Delete Files button.

If for some reason the restore window is killed before the user is able restore the application, they still have one more chance to recover all their work. Open up the most recent restore*.txt file in the assigned restore directory, and look for the "Can restore with ..." line; follow the instructions to manually run the restore function. And if that fails for any reason, the data files themselves will also still be in the restore directory; the application can be started as it normally is, and these file manually loaded to recover the lost work.