Parameters

The parameters are supplied on the command-line with a simple keyword=value syntax. Parameters appearing on the command-line have precedence over those that may occur in a configuration file.

Command-line only parameters

A few parameters may only appear on the command-line and not in a configuration file.

config=FILE

By default, the qlicserver.config configuration file is searched in the same directory as the qlicserver program itself. The config parameter can be used to specify an alternative configuration to use. This can often be useful in testing situations.

limits=FILE

By default, the qlicserver.limits is searched in the same directory as the qlicserver program itself. The limits parameter can be used to specify alternative limits to use.

Static parameters

Some parameters are deemed static, which means that their values are used when the program initial starts, but are not updated subsequently within the daemon loop. These parameters may appear on the command-line or in a configuration file.

delay=INT

This is the waiting period in seconds (positive integer) between queries in the daemon mode (invoked by the -d option). Invalid values are ignored. The default period is documented in the program usage.

ppid=(ppid | CMD | N)

For proper and reliable operation in the daemon mode (using the option -d), the program will normally not run as a true daemon, but instead watch the parent process from where it started. This behaviour provides a means of handling controlled shutdown and avoiding communicating with a non-existent sge_qmaster. An easy way to have this behaviour is to start the qlicserver program from a load-sensor script on the headnode. When the sge_execd is stopped or restarted, the load-sensor script will exit and the program will follow. This default behaviour is equivalent to specifying the string value ppid:

    ppid=ppid

As an alternative to starting the qlicserver program via a load-sensor, it could be started with an init-script and instructed to watch the pid of another command (process). For example, monitoring the sge_qmaster process:

    ppid=sge_qmaster

The specified process name can be any process currently running on the system (apart from a process named ppid, since that is already taken for the default). If you really wished to, specifying ppid=vi would have the program exit when the vi editor closes!

For any remaining situations, a numeric process id can be specified. Specifying the process id 0 or 1 (the init process) causes the program to run as a true daemon:

    ppid=0
    ppid=1

For the default behaviour (ppid=ppid), a zero signal is sent to check if the process is still alive. For the other cases, a /bin/ps command will be used when the /proc file-system does not appear to exist.

Standard Parameters

The remaining parameters can be specified on the command-line or in a configuration file. If the modification time of a configuration file changes between daemon loops, it will be re-read and the parameter values updated. It is thus possible to change various parameters without restarting the program. The command-line parameters maintained their precedence throughout the program life.

dir=DIR

This provides a common output directory for the output files specified by the output, qhost, qstat parameters. For example,

    dir=/srv/www/htdocs/xmlcache \
    output=qlicserver.xml \
    qhost=qhost.xml \
    qstat=qstat.xml

instead of the more verbose form:

    output=/srv/www/htdocs/xmlcache/qlicserver.xml \
    qhost=/srv/www/htdocs/xmlcache/qhost.xml \
    qstat=/srv/www/htdocs/xmlcache/qstat.xml

The dir parameter will be ignored if an absolute path has already been specified. For example,

    dir=/srv/www/htdocs \
    output=xmlcache/qlicserver.xml \
    qstat=/srv/www2/htdocs/qstat.xml

output=FILE

This parameter specifies the file to which the current query status should be saved. The query status is written in an XML output format.

When using the -n option to conduct a dry-run, it can be useful to send the output to the stdout:

    output=-

qhost=FILE

This parameter specifies that a supplementary GridEngine qhost command be executed and the results saved to a file. This parameter is likely only useful when the generated data can be fed to some other diagnostic tool or web interface such as xml-qstat.

qstat=FILE

The GridEngine qstat command is issued as a central part of the qlicserver logic. This parameter specifies that these byproduct results also be saved to a file.

timeout=INT

The timeout in seconds (positive integer) to be used when executing system commands. Invalid values are ignored. The default timeout is documented in the program usage.

LM_LICENSE_FILE=STRING

This parameter overrides the identically named environment setting used for the FlexLM license server query. The string is a colon-delimited list of servers:

    LM_LICENSE_FILE=port@server1:port@server2

License triads are grouped by brace brackets:

    LM_LICENSE_FILE=port1@server1:{port@triad1:port@triad2:port@triad3}

lmutil=STRING

Instead of searching the $PATH for the lmutil command need for the FlexLM license server query, this parameter can be used to provide a fully qualified path to lmutil command.

SGE_CLUSTER_NAME=STRING

This parameter overrides the identically named environment setting for providing a cluster name.