A catalog server provides naming and discovery for multiple components of the Cooperative Computing Tools, particularly the Chirp distributed filesystem and the Work Queue distributed programming framework. Services that wish to be known on the network periodically publish their information to the catalog server via a short UDP packet. Clients wishing to discover services by name may query the catalog by issuing an HTTP request to the catalog server and will receive back a listing of all known services.
To view the complete contents of the catalog, users can direct their browser to http://catalog.cse.nd.edu:9097. Command line tools work_queue_status and chirp_status present the same data in a form most useful for Work Queue and Chirp, respectively. Large sites are encouraged to run their own catalog server and set the CATALOG_HOST and CATALOG_PORT environment variables to direct clients to their server.
The catalog server is a discovery service, not an authentication service, so services are free to advertise whatever names and properties they please. However, the catalog does update each incoming record with the actual IP address and port from which it came, thus preventing a malicious service from overwriting another service's record.
|-b, --background||Run as a daemon.|
|Write process identifier (PID) to file.|
|Enable debugging for this subsystem|
|-h, --help||Show this help screen|
|Store catalog history in this directory. Enables fast data recovery after a failure or restart, and enables historical queries via deltadb_query.|
|Lifetime of data, in seconds (default is 1800)|
|Log new updates to this file.|
|Maximum number of child processes. (default is 50)|
|Maximum size of a server to be believed. (default is any)|
|Set the preferred hostname of this server.|
|Write debugging output to this file. By default, debugging is sent to stderr (":stderr"). You may specify logs be sent to stdout (":stdout"), to the system syslog (":syslog"), or to the systemd journal (":journal").|
|Rotate debug file once it reaches this size.|
|Port number to listen on (default is 9097)|
|-S, --single||Single process mode; do not fork on queries.|
|Maximum time to allow a query process to run. (default is 60s)|
|Send status updates to this host. (default is catalog.cse.nd.edu)|
|Send status updates at this interval. (default is 5m)|
|-v, --version||Show version string|
|Select port at random and write it to this file. (default is disabled)|