You are here

The PROOF configuration file (proof.conf)

The PROOF configuration file is a plane text file containing information about the available nodes and their role.

The file is typically named proof.conf but this is not mandatory. The location of the file is communicated to XrdProof plug-in via the directive xpd.resource, for example

xpd.resource static /etc/proof/proof.conf
This directive is only parsed by nodes that can be masters (see xpd.role ). The parser of the file ignores empty lines or lines starting with a '#'; the latters can be used to enter comments. Valid lines have the format:
role host options

where:

  1. role can be one among 'master', 'submaster' or 'worker';
  2. host is the host name of the node where the worker or the submaster have to be started (for the master line host indicates the entry point of the cluster);
  3. options are one or more additional key=value pairs allowing to set an alternative port (e.g. port=2093) or to assign a mass storage domain to the worker (msd=se12) which is a string used for dataset assignment in multimaster mode (other key=value pairs were originally available but are now obsolete).

The way to start more workers on the same machine is to repeat a valid line. The order the workers are started is the one found in the file, so if more workers have to be started on a set of machines, it is good practice to speedup startup to alternate the lines.

For example, to setup a cluster with 'proofmst' as master and 4 workers each on machines 'proofwrk1' and 'proofwrk2', listening on port 2093, one has to enter

# The entry point, i.e. the one to be given to TProof::Open(...)
master proofmst

# The workers, listening on port 2093
worker proofwrk1 port=2093
worker proofwrk2 port=2093
worker proofwrk1 port=2093
worker proofwrk2 port=2093
worker proofwrk1 port=2093
worker proofwrk2 port=2093
worker proofwrk1 port=2093
worker proofwrk2 port=2093
To login with a different username on the workers one can enter the wanted login username in front of the hostname, with the usual URL syntax:
username@hostname
If using authentication, this may require special massaging (case dependent!) to make sure that the relevant credentials are available to authenticate 'username' to the workers.