HLServer: Server Install

From Headus Docs

Revision as of 05:05, 15 January 2007 by Headus (Talk | contribs)
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

Contents

To correctly install and run hlserver you should follow these steps:
  1. Install the hlserver files. See below for OS specific instructions.

  2. Using the sample provided, create etc/hlserver.conf. You should at least change the IP range for "GROUP lan" to reflect your local setup. See below for an explanation of the hlserver config file.

  3. Put the keys provided into lib/.keys (IRIX/Linux) or lib/keys.txt (Windows). See below for an explanation of the key strings.

  4. Start hlserver up. See the following chapter, Running the Server for OS specific instructions.

  5. Pass on to your users the information in Application Config so they can configure their software installs to access the floating license server.

If your users encounter any problems accessing the floating licenses, see Trouble Shooting for steps you can follow to track down the problem.

IRIX/Linux Install

Typically you'll want be root and extract the TGZ file into /usr/local though that's not a strict requirement. If you install into somewhere other than /usr/local/headus, you'll need to change the HEADUS_HOME variable in etc/hlserver.run.

Windows Install

Login as a user with Administrator privileges, and run the EXE file.

Files

The following six files make up the license server installation:

    etc/hlserver 
    This is the server application. It need not be run with any special privileges unless the PORT used (see below) is under 1027.
    etc/hlserver.config 
    The contents of this file, explained in detail below, controls the behavior of the server.
    etc/hlserver.log 
    This is a series of date stamped log messages from the server showing, amongst other things, who is grabbing which licenses.
    etc/hlserver.run (IRIX/Linux) 
    This is a script that can be used to start the server on boot, and stop it on shutdown. Installation instructions are in the file.
    etc/hlserver.ini (Windows NT/2K/XP) 
    Edit this file to change the server start-up command line arguments.
    etc/hlmanager 
    This is the manager application. See "The Manager" chapter for details.
    lib/.keys (IRIX/Linux) 
    This file holds the floating license keys.
    lib/keys.txt (Windows NT/2K/XP) 
    This file holds the floating license keys.

Configuration

The config file is used to control access to the server and licenses. The simplest config file looks like this:

PORT              11668
 
GROUP   lan       192.168.0.*
GROUP   Manager   root@lan
 
PRODUCT cyslicev3 lan
    PORT 
    The server will listen at this port for license requests. There is no restriction on what this number is apart from the obvious one, that it doesn't conflict with ports used by other installed software.
    GROUP 
    Each line of this section associates a single name with a list of hosts, prefixed with optional user names. In the above simplest case, lan is associated with the IP range for a local area network. The name lan can then be used to refer to all hosts in the LAN.
     
    The * character is a shorthand way of saying 1-255; they both mean the same thing. The * character can also be used to extend to the beginning or end, as in 45-* (equivalent to 45-255) or *-66 (equivalent to 1-66).
     
    The brace characters can be used to surround a list of alternatives, as in {*-45,47,49-*} (everything except 46 and 48).
     
    Hostnames can be used in place of IP ranges, though the list could become quite long if you are serving a large number of hosts. IP ranges are more concise, and will avoid any possible domain name resolution problems.
     
    The special group Manager defines the list of users that can be trusted to run the hlmanager application (see "The Manager" chapter for more details).
     
    By the way, there's nothing stopping you from defining *.*.*.* as an IP range. The advantage of this is you don't have to think, but the disadvantage is that anyone who has access to your license server can grab one of your floating licenses. This includes anyone, anywhere in the world, if the server is connected to the internet.
    PRODUCT 
    In this section you should have a single line for each product that you have floating keys for. Follow the license name with a list of hostnames or group names that have access to that product. You can optionally prepend a username, in the form username@host/groupname to further restrict access.

The following shows a more complex example of a config file.

PORT              11668
 
GROUP   cg-lab    192.168.0.1-23
GROUP   office    fred,barney
GROUP   offsite   112.56.22.{12-15,21}
GROUP   Manager   julie@office,jimbo@cg-lab,root@hlserver
 
PRODUCT cyslicev3 cg-lab,{phil,jill}@offsite
PRODUCT plyedit   jimbo@cg-lab

Anyone currently logged into a cg-lab machine can request a cyslicev3 license, but only phil or jill can from the handful of offsite machines. Whenever jimbo is logged into a cg-lab machine, he can request a cyslicev3 or plyedit license as well as run the license manager.

Keys

Floating licenses, stored in the lib/.keys or lib/keys.txt file, look something like this:

      <- 21 hex numbers ->   Product   System   Expire Ref#   Num
 #v2# 3a d6 ........ a9 42 # cysurf    690ca1ab never  0920 [001 3]
 #v2# 5d da ........ 32 6a # cyslicev3 690ca1ab never  0921 [001 1]
 #v2# 37 db ........ 71 5b # cyslicev3 690ca1ab 040216 0922 [002 1]

The Product names go into the config products section, System is the sysid of the license server, Expire is when each floating license runs out, Ref# is a database reference number used by the issuer, and Num is the sequence id and number of floating licenses in that key.

In the above example, there is 1 cyslicev3 and 3 cysurf floating licenses that will never expire, and 1 additional cyslicev3 license that runs out on the 16th of Feb, 2004. Even though there are multiple cyslicev3 keys, you should have only one cyslicev3 access list in the config products section.