# # $Id: xrootd.cf.example2,v 1.1 2008/01/07 08:41:18 abh Exp $ # # The following is a sample xrootd configuration. The relevant prefixes are: # # acc - Access Control # cms - Cluster Management Service # ofs - Open File System # oss - Open Storage System # sec - Security # xrd - Extended Request Daemon # xrootd - Xrootd Service #----------------------------------------------- # The Common Section (applies to every component) # # Tell everyone who is the redirection manager # #all.manager kanrdr-a+ 3121 ### !!! This has been subsituted by all prefix and manager directive ### # Tell the odc component the location of the manager ### # plus means that we have more than one manager under DNS RR ### all.manager all xrdstar.rcf.bnl.gov+ 3121 # Identify which machines will be redirecting clients # if named xrdtestredir all.role manager xrd.port 1095 else if named xrdtestsuper all.role supervisor xrd.port any else all.role server xrd.port any fi # Finally, we need to indicate processing options by path. For instance, # which ones are exported (i.e., visible) and which ones are migratable (which # will indicate the logical paths (i.e., lfn's) that should exist in the MSS.) # #all.export /store nodread mig all.export /data r/w nostage all.export /home r/w nostage all.adminpath /var/xrootd # Set debug log level xrd.trace conn net xrootd.trace login emsg #----------------------------------------------- # The Open Storage System Section # # All exported paths should be read/write with no migration to/from MSS # oss.defaults nomig r/w nostage # Indicate where we have mounted filesystems that can be used for space # The cache directive will also be used by the cmsd. So, we need not repeat it. # #oss.cache public /kanga/cache* oss.cache rhstar /data* # While we highly recommend that you avoid path prefixing, here we indicate # the actual way files are physically name (i.e., the lfn to pfn mapping). The # localroot is how we name this on the data server while remoteroot tells the # system the corresponding name in the Mass Storage System. # oss.localroot /home/starlib oss.remoteroot /home/starreco # Since we are using a Mass Storage System we need to indicate how MSS meta-data # information is retrieved (mssgwcmd) and how files are retrieved (stagecmd). # The xfr directive will limit the sumber of simultaneous stages to eight. # #oss.msscmd /usr/etc/ooss/pudc -f -c /usr/etc/ooss/rxhpss.cf #oss.stagecmd /usr/etc/ooss/ooss_Stage #oss.xfr 8 # Suppress ofs and oss logging (this is probably default anyway) ofs.trace -all oss.trace -all # load a PFN/LFN conversion library which serves namespace issue at STAR # dbg=1 for debugging purpose and see conversion in log file # pth=path to define prefix path oss.namelib /star/u/starlib/Xrootd64/release/xrootd_cvs_20070417/.x8664_sl5/N2N/libXrdStarN2N.so pth=/data0/starlib&pth=/data1/starlib&pth=/data2/starlib&pth=/data3/starlib&pth=/data4/starlib&pth=/data5/starlib&pth=/home/starlib # Increase max file descriptor number to hard limit oss.fdlimit * max # number of threads, for beginning take defaults # 15 processes made too big load on the servers and they are being killed by kernel #oss.xfr keep 1h 15 * 50 * if named xrdtest oss.xfr keep 1h 5 * 50 * else oss.xfr keep 1h 2 * 50 * fi #----------------------------------------------- # The XRD Section # # Generally, xrd defaults are fine. So, no need to change them. # #----------------------------------------------- # The Xrootd Section # # Here we load the extended file system support for xrootd # xrootd.fslib /opt/xrootd/lib/libXrdOfs.so #----------------------------------------------- # The Cluster Management Section # # Managers use the allow and sched directives. # Servers use the allow and perf directives. # # Indicate which hosts are allowed to connect to the cmsd (even if localhost) # #cms.allow host kan*.slac.stanford.edu #cms.allow host bbr-rdr*.slac.stanford.edu cms.allow host * # To use load based scheduling, specify a load formula using sched # Only used by manager and supervisor # #cms.sched cpu 100 io 20 mem 40 pag 20 runq 10 fuzz 20 refreset 3600 - Changed OR 2011/01 #cms.sched cpu 100 io 20 - Changed JL 2011/01 #+ # JL comment: # Default directive ->> sched maxload 99 # sets the threshold to 99% of the value below, assumed to be based on a max=100 # Previous formula was super-wrong ... #- cms.sched cpu 70 io 20 mem 5 runq 5 fuzz 10 refreset 3600 # To effect load based scheduling, we must start a performance monitor # #cms.perf int 180 pgm /opt/xrootd/etc/XrdOlbMonPerf 120 cms.perf int 5m pgm /afs/rhic.bnl.gov/star/ROOT/Xrootd/prod/utils/XrdOlbMonPerf.pl 300 # Change cms pid file location (to avoid being wiped out in /tmp) cms.pidpath /var/xrootd # Specify how servers are selected for file creation # (allow for increased space usage and increase space recalculation frequency) cms.space linger 0 recalc 10 min 1g 2g # Increase keep-alive frequency, suppress logging of usage information, # increase number of pings per usage request # Used only by manager cmsd cms.ping 5s log 0 usage 15 # Manage processing latency # Used only by manager cmsd #cms.delay discard 3 drop 5s full * lookup 3 overload 90 #cms.delay servers 85% service 15 startup 65 suspend 15 - Commented JL 2011/01 # JL - beware that servers x% means that if the number of servers go below # that, the WHOLE Xrootd stops functioning. cms.delay discard 3 drop 5s full * lookup 3 overload * cms.delay servers 75% service 15 startup 65 suspend 15 # Enable tracing on redirector and supervisor (default is -all) if named xrdtestredir xrdtestsuper cms.trace all debug else cms.trace all fi #----------------------------------------------- # The MPS Section # # Here code the relevant dorectives to control migration, purge, and staging # Most of the defaults are likely wrong. The typical ones to specify are: # # Where error messages go via mail and how often they should go # #mps.adminuser = sys-hpss # For migration, how long to wait between runs, how long a failure is to be # recognized (after which the operation is retried). how often purge should # run, and the high/low purge thesholds. # #mps.migr.rmfail_time = 129600 #mps.migr.waittime = 600 #mps.purg.waittime = 3600 #mps.purg.lousedpct = 80 #mps.purg.hiusedpct = 80 # For pre-stage, we generally want to indicate the maximum number allowed # at one time and the command to use to transfer data from the mss # #mps.pstg.max_pstg_proc = 3 #mps.pstg.pstgcmd = /opt/xrootd/utils/mps_Stage -i # Generally, for all component, we need to indicate who the MSS transfer user # is, the target host and port. Usually, we limit retries to two. # #mps.xfrhost = babarmss #mps.xfruser = objysrv #mps.xfrport = 2021 #mps.stage.max_retry = 2 #----------------------------------------------- # The Security section xrootd.seclib /opt/xrootd/lib/libXrdSec.so sec.protocol /opt/xrootd/lib unix ofs.authorize acc.authdb /opt/xrootd/etc/StarAuthDB