This document is for system administrators. It describes the installation process of the Kusari Licence Management System.
See the Kusari User Guide for further information on this variable.
This is needed for machine-local licences (node licences and perpetual licences); it must be run on the machine for which the licence is intended.
It is also needed for site licences (both floating licences and uncounted site licences); it must be run on the machine which is to be the licence server.
The distributed Kusari licence server package contains the following subdirectories:
The recommended installation procedure for a site licence, where no Kusari licence server is currently being run, is as follows:
If the server machine is already running naglmd, the procedure is simpler:
Two programs are supplied for testing the local network, these are testserver and testclient.
If the server cannot start, it will produce an error message. The most likely error messages are either
?Port number conflict: TCP port 7733 is already in useor
?Port number conflict: UDP port 7733 is already in useThese indicate that the default Kusari communication port number is already in use by another application on the server machine, and that another port number should be chosen. The procedure described below (``Choosing different port numbers'') should be followed.
Once the testserver program is running successfully, the testclient program should be used to test communications. An initial test should be to run the testclient on the server machine; if the default port numbers are being used, simply run testclient with no arguments.
The testserver program will produce informative messages when testclient is run, if communications can be established. A message is produced for each of the TCP and UDP tests; for a completely successful test it will display
TCP message test seems ok - reporting to testclient UDP test passed ok - reporting to testclientIf the TCP test passes but the UDP test fails, the second line will instead be
UDP test ****** FAILED ******
The testserver program will exit on receiving an interrupt signal (SIGINT), e.g. by typing Ctrl-C on its terminal or into its window.
The server-spec takes the same form as in the NAG_KUSARI_FILE variable, i.e. the server machine name followed by a colon, optionally followed by the port number. If no server-spec is present, it is treated as localhost:.
If the testclient program cannot connect to the testserver program, it will produce the message:
?Test FAILED - cannot connect to server (Perhaps it is not running, or on a different machine?)You should check that you have specified the right machine name, and that either you are using the default port numbers or have specified the same port number for testclient as you did for testserver.
If both the TCP and UDP tests pass, testclient will display
TCP message test passed ok. UDP message test passed ok.If the UDP test fails, the second line will be replaced by
UDP message test ****** FAILED ******
If your site has multiple sub-nets, the testclient program should be run on a machine in each sub-net to confirm that it will work.
If you cannot get the testserver and testclient programs to communicate successfully, you should contact NAG with the exact messages that were produced.
The procedure specified above for using testserver and testclient should be followed, but with the port number specified. For testserver, use the -port option; for example, to test port 7734, do
testserver -port 7734
For testclient program, specify the port number as part of the server name; for example, to communicate with the server on port 7734 on the local host do
The server control file contains all of the licences that will be controlled by the naglmd licence server, and may contain other control information as detailed below.
It is indicated by the SITE or SITEG keywords, and contains the expiry date and a licence key.
One licence is required for each combination of user id and machine for which concurrent use is required; for example, two different users on the same machine will require two licences, as will the same user on two different machines. However, only one licence is required for multiple uses by the same user on a single machine.
By default, products will queue for a licence if all the licences are currently checked out. An informative message may be produced (depending on the software product) when this happens.
A floating licence key line is indicated by the FLOATING or GFLOATING keywords, and contains the number of licences available, the expiry date, and a licence key.
If no LOG line is present, and the /LOG option is not used, naglmd will log any errors and information messages (such as licence requests) to C:\Program Files\NAG\naglmd.log.
Licence keys issued for one pair of port numbers will not work on any other ports.
! This is where we want the log file to be written. ! LOG C:\Program Files\NAG\naglmd.log ! We have a site licence for the NAG FL90 library (Mark 4) on Windows, ! using the NAGWare f95 compiler. ! FNW3204DN SITEG 2006/12/31 "AidmYczVlY+hF9c1qhDydOja" ! We have 10 floating licences for the NAGWare f95 compiler on Windows: ! NPW3250NA FLOATING=10 2006/12/31 "vKmOEjxwkeVjcjjkJgGuoW0k" ! And that's all folks.
Each naglmd licence server can only be run on its specified server machine, and the server machine can only run one naglmd server at a time. When run, it reads its server control file (by default this is located in C:\Program Files\NAG\naglmd.ctl, unless the NAG Kusari Service is being used — see section 7.3).
No output is produced if the startup is successful; any errors encountered after startup will be written to the log file.
naglmd normally logs all licence requests (whether granted or not), and any errors that might occur.
naglmd can be shut down by using the STOP command to kldctl.
Subsequently the naglmd licence server will start automatically at boot time.
The klcheck program takes a single argument which is a NAG product code. It then attempts to check out that product and reports whether it was successful, and if successful the type of licence it obtained and from where.
The kldctl program is provided for controlling naglmd. It takes a command as its first argument. The PLIST command lists the product which are controlled by a particular naglmd. The PINFO command has a product code argument, and lists the details for that product on naglmd. The REREAD command causes naglmd to reread its control file. Finally, the STOP command shuts naglmd down.
The PLIST and PINFO commands can be used anywhere by anyone, but the STOP command can only be used on the machine running naglmd, and only by the same user.
The optional second argument is a licence server specification, as defined above, which only needs to be provided for a remote server or a non-default port number on a local server.
The klreg program is provided for storing licence information in the Windows Registry, and is described in the Kusari User Guide.
* On older Windows systems that do not have .NET Framework 4.0, use NAGService_net20.msi instead.