Pool life cycle management

Adding a pool to an existing setup

Pools in D-Cache are the areas of the file system hierarchy where files can be stored. Although Pools are not quite analogous to SRM spaces and D-Cache has no space allocation functionality.

If D-Cache is to be used with 12 user communities each likely to use as much disk space as they can without space reservation you might think users would have problems getting any disk space. To overcome this a work around has been found. if Pools are placed in partitions the UNIX operating system will limit how much data can be stored in a pool, as many partitions as pools and user communities need to be created. When a partition is full D-Cache will report an error to the end user.

Managing and maintaining disk resources with partitions is out of scope for this document. To add a new pool select the mount point you need to change the "/opt/d-cache/config/ce.epcc.ed.ac.uk.poollist" D-Cache configuration file. Please note ce.epcc.ed.ac.uk is the fully qualified hostname and so the file name will differ on your system.

/etc/init.d/dcache-pool stop
mkdir -p /opt/pool2/pool/control
mkdir -p /opt/pool2/pool/data
cp /opt/pool/pool/setup /opt/pool2/pool/
vi /opt/d-cache/config/ce.epcc.ed.ac.uk.poollist 
/etc/init.d/dcache-pool start

The content of "/opt/d-cache/config/ce.epcc.ed.ac.uk.poollist" contains a line per pool

ce.epcc.ed.ac.uk_1  /opt/pool/pool  sticky=allowed recover-space recover-control recover-anyway lfs=precious tag.hostname=ce.epcc.ed.ac.uk 
ce.epcc.ed.ac.uk_2  /opt/pool2/pool  sticky=allowed recover-space recover-control recover-anyway lfs=precious tag.hostname=ce.epcc.ed.ac.uk

Removing a pool to an existing setup

This has yet to be replicated at RAL so this section of the document may not be fully debugged. Thanks to Derek Ross, Mona Aggarwal and Kostas Georgiou for this section.

"Ross, D \(Derek\)"

Hi Mona,

I haven't tested this myself but I think you'd want to do something like 
this to move all files off a pool:
1. In the PoolManager admin module, disable the pool with psu set 
disabled <poolname>
2. In the destination pool admin module, do pp get file <pnfsid> 
<srcpoolname> and rep set precious <pnfsid> -force for all the files in 
the src pool
3. In the source pool admin module, do pnfs unregister
4. Stop the dcache-pool service on the appropriate system, remove the 
source pool line from the /opt/d-cache/<host>.poollist and the restart 
the dcache-pool service.



I think you need access to the admin interface to find out if a file is 
marked for deletion:
1. Go into the PnfsManger and do pnfsidof <file>
2. Then do flags ls <pnfsid returned above>
If the file is marked deletable then the line d -> true will appear in 
the output


Derek



-----Original Message-----
From: GRIDPP2: Deployment and support of SRM and local storage 
management [mailto:GRIDPP-STORAGE@JISCMAIL.AC.UK]On Behalf Of Mona 
Aggarwal
Sent: 01 July 2005 11:54
To: GRIDPP-STORAGE@JISCMAIL.AC.UK
Subject: dCache -- Remove a pool?


Dear all,

At IC we have local CMS group getting ready to test the
dCache. Based on the discussions with the group, it
looks the pool structure on the disk need to be changed.

Can some one answer the following questions?

a) How to remove a pool completely without reinstalling the
Pool node. In other words copying all the files from
one pool to another pool.

b) How can we confirm that the file is marked for deletion
after using srm-advisory-delete command?


Regards,

Mona

"Mona Aggarwal"

Dear all,

At IC we have local CMS group getting ready to test the dCache. Based on the discussions with the group, it looks the pool structure on the disk need to be changed.

Can some one answer the following questions?

a) How to remove a pool completely without reinstalling the Pool node. In other words copying all the files from one pool to another pool.

b) How can we confirm that the file is marked for deletion after using srm-advisory-delete command?

Regards,

Mona

On Fri, Jul 01, 2005 at 02:06:05PM +0100, Ross, D (Derek) wrote:

> I haven't tested this myself but I think you'd want to do something 
like this to move all files off a pool:
> 1. In the PoolManager admin module, disable the pool with psu set 
disabled <poolname>
> 2. In the destination pool admin module, do pp get file <pnfsid> 
<srcpoolname> and rep set precious <pnfsid> -force for all the files in 
the src pool
> 3. In the source pool admin module, do pnfs unregister
> 4. Stop the dcache-pool service on the appropriate system, remove the 
source pool line from the /opt/d-cache/<host>.poollist and the restart 
the dcache-pool service.
>

How do you get the pnfsids for all the files in a pool?

If a pool has been in use for some time it will probably have a few 
thousand files, i don't think that anyone in his right mind
will want to move each file individually.
There must be a command like for example evacuate poolname that forces 
d-cache to evacuate a pool and moves
everything to another suitable one.

> I think you need access to the admin interface to find out if a file 
is marked for deletion:
> 1. Go into the PnfsManger and do pnfsidof <file>
> 2. Then do flags ls <pnfsid returned above>
> If the file is marked deletable then the line d -> true will appear in 
the output

The problem is that end users want to have the information... Is there a 
way to get the info
from srm?

Kostas