Print

Print


Hi George,

It is completely possible and the complexity is only driven by how 
transparent you wish this to be. Let first start with running two xrootd 
instances on the same node. The steps:

a) Each instance would be started with a different instnace name (see the 
-n option on the xrootd command line). Of course, the first instance can 
deault to no name which he other would have a name, say "-n alice".
http://xrootd.org/doc/dev47/xrd_config.htm#_Toc483004720

b) A single configuration file can be used by special casing direcyives 
using the "if" directive. For instance,

if named alice
<directives specific to the alice instance>
else
<directives specific to the non-alice instance>
fi
<common directives>
http://xrootd.org/doc/dev42/Syntax_config.htm#_Toc427321307

c) Each instnace would be assigned its own port number. This can be done 
in the config file or via command line. This is likely the one requirement 
that is most annoying but is one required by all OS's.

Now, say you want to use the same port nuber for both instance. Youcan do 
that by layering both instance with a redirector. The redirector would 
have the standard port number (say 1094) and evryone would connect to it. 
It would then decide in the incomming client needs to go to the un-named 
instance or to the special alice instance and redirect the client to the 
"right" one. Each of hose would simply be running on soe abitrary port.

If the decision can be made based on file path then you need not write any 
plugin but use the xrootd.redirect directive to accomplish this.
http://xrootd.org/doc/dev48/xrd_config.htm#_Toc496911346

Otherwise, you will need to write a plugin to do more detailed decision 
making. Since, I don't know enough here I can't tell in this note. 
However, feel free to contact me if a plugin is warrented in this case.

Andy

On Fri, 17 Aug 2018, George Patargias - UKRI STFC wrote:

> Hello,
>
>
> Apologies if this issue has been discussed before.
>
>
> This is in relation to the use of xrootd as part of the CASTOR storage service in RAL Tier-1. We are planning to set up a single CASTOR storage instance for all LHC and no-LHC VOs.
>
>
> Right now, there is a xrootd@manager service running on each CASTOR headnode controlled by /etc/xrootd/xrootd-manager.cfg. However, one VO
>
> (ALICE in particular) needs certain lines (for authorization) in the xrootd-manager.cfg that other VOs do not need (and don't want).
>
>
> My question. Is it possible to set up two xrootd instances running on each headnode each one with its own xrootd-alice.cfg? I mean one "generic" instance (e.g. xrootd@lhc) for all LHC VOs (including those non-LHC VOs that do not need special authorisation config in xrootd) and one instance (e.g. xrootd@alice) that will by used only by the ALICE VO in which the xrootd-alice.cfg will contain the neccessary ALICE-specific directives.
>
>
> If this is possible what other xrootd config directives (all.export ?) we need so that given a single endpoint (root://castor-stager.gridpp.rl.ac.uk//) the ALICE users will be directed to the xrootd@alice service and all the other users will be directed to the xrootd@lhc service?
>
>
> Many thanks in advance,
>
>
> George
>
> ########################################################################
> Use REPLY-ALL to reply to list
>
> To unsubscribe from the XROOTD-L list, click the following link:
> https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-L&A=1
>

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-L list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-L&A=1