wiki:manuals/PsuWriteOnlyPools
Last modified 13 years ago Last modified on 06/03/07 22:30:12

Pool Selection Unit : write and read only pools

Purpose : How to configure different pools for reading and writing per VO

The intention is to have two sets of pools per experiment. The vo-write-pools are only allowed to receive data from outside while the vo-read-pool deliver data to dCache clients. Pool-2-Pool transfers make sure data is delivered from the write pools to the read pools. It is essential to understand that

  • Write pools will fill up with precious data. There is no automated mechanism changing the status. So the files will stay precious even after a copy has been generated in the read pools.
  • Files in the read pools are always 'cached' and are removed as space is running short.

The example below has to be repeated per VO.

With this configuration, pools are not shared among VO's. It is certainly important to notice that whether or not a file belongs to a VO depends on the location in the file-system and not on the permission ownership.

PSU configuration

#
#  VO independent definition 
#  --------------------------
#
psu create unit -net       0.0.0.0/0.0.0.0
psu create unit -protocol  */*
#
psu create ugroup all-protocols
psu addto ugroup all-protocols  */*
#
psu create ugroup any-net
psu addto ugroup any-net 0.0.0.0/0.0.0.0
#
#  allow pool to pool 
#
rc set p2p on
#
# or 
#
# rc set p2p oncost
#
#
#    VO specific part
#    ------------------
#
#  create pool groups and add pools
#
psu create pgroup cms-write-pools
psu create pgroup cms-read-pools
#
#  add files to read and write pools
#  Keep in mind this should actually read 'write-only' and 'read-only' pools
#
###
#
#  Assign storage units to unit groups
#
psu create unit -store     cms:cms@osm
#
psu create ugroup cms-data
psu addto ugroup cms-data  cms:cms@osm
#
#
#    create the read-only write-only link and allow p2p between
#
psu create link cms-write-link cms-data  any-net all-protocols
psu set link cms-write-link -readpref=0 -writepref=10 -p2ppref=10 -cachepref=0
psu add link cms-write-link cms-write-pools
#
psu create link cms-read-link cms-data  any-net all-protocols
psu set link cms-read-link -readpref=10 -writepref=0 -p2ppref=10 -cachepref=0
psu add link cms-read-link cms-read-pools
#

To have pools being shared among VOs, one may add various units to the same unit group. e.g.:

psu create unit -store dteam:dteam@osm
psu create unit -store ops:ops@osm
#
# the groups
#
psu create ugroup shared-units
psu addto ugroup shared-units  dteam:dteam@osm
psu addto ugroup shared-units  ops:ops@osm
#
# and the link
#
psu create link shared-read-link shared-units  any-net all-protocols

Last modified Tue Aug 4 08:03:23 2020 by Patrick