This section is a brief description of DaemonCore. DaemonCore is a library that is shared among most of the Condor daemons which provides common functionality. Currently, the following daemons use DaemonCore:
Most of DaemonCore's details are not interesting for administrators. However, DaemonCore does provide a uniform interface for the daemons to various UNIX signals, and provides a common set of command-line options that can be used to start up each daemon.
One of the most visible features DaemonCore provides for administrators is that all daemons which use it behave the same way on certain UNIX signals. The signals and the behavior DaemonCore provides are listed below:
Exactly what ``gracefully'' and ``quickly'' means varies from daemon to daemon. For daemons with little or no state (the kbdd, collector and negotiator) there's no difference and both signals result in the daemon shutting itself down basically right away. For the master, graceful shutdown just means it asks all of its children to perform their own graceful shutdown methods, while fast shutdown means it asks its children to perform their own fast shutdown methods. In both cases, the master only exits once all its children have exited. In the startd, if the machine is not claimed and running a job, both result in an immediate exit. However, if the startd is running a job, graceful shutdown results in that job being checkpointed, while fast shutdown does not. In the schedd, if there are no jobs currently running (i.e. no condor_shadow processes), both signals result in an immediate exit. With jobs running, however, graceful shutdown means that the schedd asks each shadow to gracefully vacate whatever job it is serving, while fast shutdown results in a hard kill of every shadow with no chance of checkpointing.
For all daemons, ``reconfigure'' just means that the daemon re-reads
its config file(s) and any settings that have changed take effect.
For example, changing the level of debugging output, the value of
timers that determine how often daemons perform certain actions, the
paths to the binaries you want the condor_master to spawn, etc.
See section 3.4 on
page , ``Configuring Condor'' for full
details on what settings are in the config files and what they do.
The other visible feature that DaemonCore provides to administrators is a common set of command-line arguments that all daemons understand. The arguments and what they do are described below:
NOTE: when the condor_master starts up daemons, it does so with the -f option since it has already forked a process for the new daemon. That is why you will see -f in the argument list of all Condor daemons that the master spawns.
Since daemons run with their current working directory set to the
value of LOG, if you don't specify a full path (with a ``/''
to begin), the file will be left in the log directory. If you leave
your pidfile in your log directory, you will want to add whatever
filename you use to the VALID_LOG_FILES parameter,
described in section 3.4.14 on
page , so that condor_preen does not
remove it.