Last modified 12 years ago Last modified on 10/22/09 17:40:10

Installing dCache with dCache Yaim

Please report problems and unexpected behavior to our support e-mail address.


Before installing dCache, make sure you get a valid certificate from your CA for the particular hosts. A valid certificate consists of two small files :

  • hostcert.pem
  • hostkey.pem

Place those files in the /etc/grid-security directory and change permission as follows

chmod 400 hostkey.pem
chmod 644 hostcert.pem

Define the necessary repositories

While apt and yum both exist for SL4 just as they did for SL3, the default repository client for SL4 is now YUM we do not yet (Tue Oct 26 06:54:26 2021) support the use of apt with SL4.

Yum is configured in by adding files to /etc/yum.repos.d/ for each repository. The format and content of the files content are shown below.

For details on SL4 yum repositories. For details on SL5 yum repositories.

Install dCache through metapackages

The install of dCache via the meta packages for SL4 and SL5 is different.

install the meta packages for SL4.

install the meta packages for SL5.

Install Yaim

this should be done simply by typing

yum clean all
yum update

Users and Groups Configuration

If you don't have your own users and group setting, the simplest is to take the Yaim defaults :

cp -r /opt/glite/yaim/examples/* /opt/glite/yaim/etc

At that point you need to check if the JAVA_LOCATION, specified in your site-info.def, is indeed the location of your installed JVM. If not please change it to the correct value. Moreover assign the same location to the JAVA_HOME keyword in the /opt/d-cache/etc/srm_setup.env file. Please do this before you proceed wit the installation.

Customize your site-info.def

Find a site-info.def template at /opt/d-cache/share/doc/dCacheConfigure/examples/site-info.def, Please customize this file to your needs and place it at /root. For a single host installation this might include the following modifications to the default. (Here, we only regard dCache related modifications the site file.) For advanced dcache YAIM setting please see this page.
#  Please use jdk 1.6 for SL5 and if you want you can use j2sdk 1.5, for SL4 will also work but performance will not be as good.
# please make sure, you are using the 'Full qualified host names'.
# the pools : hostname:size:path
# the various components
# The following values have defaults and are optional.
#  DCACHE_DOOR_SRM  : admin node
# For the first installation, the following variables have
# to be set to 'yes'.
#  DO NOT set these values to yes on existing production services,
#  dCache internal databases will be deleted.
# check if the right VO's are defined.
VOS="ops dteam"

Configure yaim-dcache

Then to configure dCache etiehr of these lines if fine they are in practice identical as dcache YAIM defines the configuration to be applied based upon the site-info.def.

 /opt/d-cache/bin/ -s /root/site-info.def -c config_sedcache

Some services are also only configured if they are found on the host, examples include mds/bdii or gridmap/gplamsa.

The final configration command will produce quite some output including a set of error messages like :

umount: /pnfs/fs: not found
/etc/init.d/pnfs: line 36: /tools/pnfs.server: No such file or directory

The pnfs server will be started and stopped several times, which is ok. Somewhere in the middle you will notice one of those nasty Java Stack traces, like

Catalina.stop: Connection refused Connection refused
        at Method)

This is fine as well, Please watch the dCache webpages for all cells to be become ready.


After 5 minutes all services except for the SRM will show up. The SRM is started with the first srm request to this dCache instance, and from there it will probably take another minute to show up on the web page.

Assigning pools to VO's

From the configuration so far, dCache doesn't know which of the pools should be owned by which VO. The implications are that

  • Pools are shared among all VO's
  • The information provider system reports 0 Bytes available for all VOs.

In order to assign pools to VOs you need to log into the commandline interface

ssh -l admin -c blowfish -p 22223 <adminNode>

Change to the PoolManager cell :

cd PoolManager

and do the assignment. YAIM already created a so called pool group for each VO which is initially empty. To add pools to such a pool group :

psu addto pgroup <VO-name> <poolName>


psu addto pgroup dteam pool1_1 

Type 'save' after all pools have been assigned. The consequences are :

  • dteam in only allowed to use pool1_1.
  • The information system reports the correct available/used space for dteam.
  • Other VOs are still allowed to use all pools including pool1_1

To disallow sharing pool1_1

psu removefrom pgroup default <poolName>


psu removefrom pgroup default pool1_1