glite-lb-bkserverd man page

glite-lb-bkserverd — bookkeeping server daemon

Synopsis

glite-lb-bkserverd [options]

Description

glite-lb-bkserverd accepts L&B events from interlogger, manages the data storage, and serves user queries (L&B consumer clients).

Currently, the data are stored in MySQL database.

The main process spawns several slave processes. Then it listens on port (default value is 9000) for consumer queries and port+1 for interlogger daemon requests to store events to database. Requests are redirected to the slaves (and picked up by the first free slave process). All the connection handling and data processing (including SSL handshake) is performed by the slaves.

The slaves voluntarily die and are resurrected periodically to workaround potential resource leakage.

Options

-a HOST:PORT, --address HOST:PORT
Make the server pretend (wrt. data handling) it listens on HOST:PORT instead of the real listening address. This is used for debugging and various administrative purposes (e.g. computing usage statistics on data dumped from another server).
-c FILE, --cert FILE
Get certificate from FILE. This option overrides the $X509_USER_CERT environment variable.
-b SWITCH, --transactions SWITCH
Set transaction on/off. SWITCH is true where its value is not 0.
-C DIR, --CAdir DIR
Trusted CA's certificates directory. DIR. This option overrides the $X509_CERT_DIR environment variable.
-V DIR, --VOMSdir DIR
Trusted VOMS server's certificates directory. DIR. This option overrides the $X509_VOMS_DIR environment variable.
-d, --debug
Don't run as daemon. Additional diagnostics are not enabled, they can be configured through log4c instead.
-r, --rgmaexport
Write state info to RGMA interface.
-i FILE, --pidfile FILE
Store master pid into FILE instead of the default pidfile location. Unless unavoidable it is not recommended to change the pidfile location as it is also used for locking to prevent starting up multiple server instances and to generate the semaphore set unique key (see option -l).
-k FILE, --key FILE
Get private key from FILE. This option overrides the $X509_USER_KEY environment variable.
-l NUM, --semaphores NUM

Use NUM semaphores (job locks).

To prevent race conditions on simultaneous event storage and job-state updates glite-lb-bkserverd uses a set of semaphores to lock jobs. Jobids are hashed to the semaphores and only one of the set of jobs that map to a particular semaphore may be updated at any given time. Therefore NUM is a limit on potential processing parallelism.

NUM defaults to the number of slaves (see -s).

-L NUM:NUM:NUM, --limits NUM:NUM:NUM
Limit the maximum number of returned jobs/events that match user query to NUM:NUM:NUM in format events_limit:jobs_limit:size_limit.
-N NUM, --notif-dur NUM
Maximal duration of notification registrations in hours NUM.
-S PREFIX, --purge-prefix PREFIX
Purge files full-path prefix PREFIX.
-D PREFIX, --dump-prefix PREFIX
Dump files full-path prefix PREFIX.
-J DIR, --jpreg-dir DIR
JP registration temporary files prefix (implies '-j'). DIR.
-j , --enable-jpreg-export
Enable JP registration export (disabled by default).
-m STRING, --mysql STRING

STRING is a database connect string in the form
USER_NAME/PASSWORD@DB_HOSTNAME:DB_NAME

It defaults to lbserver/@localhost:lbserver20.

-n, --noauth
Turn off any authorization.
-p NUM, --port NUM
Listen on the port NUM.
-w NUM, --wsport NUM
Set port to serve the web services requests to NUM.
-r, --rgmaexport
Write state info into the RGMA interface. Experimental.
-s NUM, --slaves NUM
Fork NUM slaves.
--super-user USER, --super-user-file FILE
Bypass query authorization (i.e. return results anyway) when USER (or users listed in FILE) connect.
--no-index NUM
Disable checking the indices for superusers (NUM=1) or entirely (NUM=2).
--strict-locking
(not recommended). Use a more strict locking strategy -- lock jobs sooner, when events are stored, not just for status update. This prevents a non-probable but still possible race condition with parallel purge but may slow down processing on heavy loaded servers. Anyway, the only consequence of the race condition is a little garbage left in the database which is cleaned form time to time anyway.
--notif-il-sock SOCK
Socket SOCK to send notifications.
--notif-il-sock PREFIX
File PREFIX for notifications.
--count-statistics NUM
Count certain statistics on jobs for superusers (NUM=1) or for all (NUM=2).
-t NUM, --request-timeout NUM
Request timeout NUM for one client.
--silent
Do not print diagnostic, even if -d is on.
-g--greyjobs
Allow delayed registration (grey jobs), implies --strict-locking.
-A,--enable-lcas
Activate LCAS-based authorization.
-I,--rss-time NUM
Set the maximal age (in seconds) of states published via RSS.
-P,--proxyonly
Run only proxy service.
-B,--withproxy
Run both server and proxy service.
-o,--sock
Path-name to the local socket for communication with LB proxy.
-q,--con-queue
Size of the connection queue (accept).
-W,--proxy-il-sock
Socket to send events to.
-Z,--proxy-il-fprefix
File prefix for events.
-G,--proxy-purge
Enable automatic purging of the jobs in terminal state for proxy service (disabled by default, purging cron job installed by YAIM).
-E,--exclusive-zombies-off
Disable checking of purged jobs when registering jobs with the EDG_WLL_LOGLFLAG_EXCL flag set.

Files

/var/run/edg-bkserverd.pid
if running as root (not recommended).
$HOME/edg-bkserverd.pid
otherwise.

File to store pid and to generate semaphores key.

No configuration files needed.

Environment

X509_USER_KEY
If $X509_USER_KEY is set, it is used to locate private key file.
X509_USER_CERT
If $X509_USER_CERT is set, it is used to locate certificate file.
X509_CERT_DIR
If $X509_CERT_DIR is set, it is used to locate the trusted CA's certificates and ca-signing-policy files.
X509_USER_PROXY
If $X509USER_PROXY is set, it is used to locate proxy certificate file.
EDG_WL_RGMA_FILE
If $EDG_WL_RGMA_FILE is set, it is used as name of file for sharing data with RGMA services.
EDG_WL_RGMA_SOCK
If $EDG_WL_RGMA_SOCK is set, it is used as name of socket for communication with RGMA.

Bugs

In a case of a sudden crash, alive slave processes may survive or some resources (IPC locks, open ports) may stay allocated. Please, deal with such problems via standard commands kill and ipcrm.

Please report all bugs to CESNET gLite L&B issue tracker available at https://github.com/CESNET/glite-lb/issu…

See Also

glite-lb-bkindex(8), glite-lb-purge(1), glite-lb-interlogd(8), glite-lb-logd(8), glite-lb-logevent(1),

Author

EU EGEE, JRA1.

Referenced By

glite-lb-bkindex(8), glite-lb-dump(1), glite-lb-interlogd(8), glite-lb-load(1), glite-lb-logd(8), glite-lb-logevent(1), glite-lb-notify(1), glite-lb-purge(1), glite-lb-setup(8).

April 2008 EU EGEE Project Logging&Bookkeeping