Installing dCache with dCache Yaim
Please report problems and unexpected behavior to our support e-mail address.
- We assume a basic SL4/SL5 installation.
- While YAIM is still used for compatability for glite the dCacheConfigure.sh script is replacing YAIM. This document is now depricated and you should read Installing dCache with YUM and Configuring dCache with dCacheConfigure.sh
- For SL3 releases please read SL3 yaim dcache howto
- With a standard computer and network connectivity this procedure shouldn't take much longer than 20 minutes.
- The main YAIM project page YAIM home page
Prerequisites
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 (Sun Jan 17 07:28:08 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.
MY_DOMAIN=desy.de # # 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. # JAVA_LOCATION="/usr/java/jdk1.5.0_11/" # # please make sure, you are using the 'Full qualified host names'. # DCACHE_ADMIN="dcache.desy.de" # # the pools : hostname:size:path # DCACHE_POOLS="dcache.desy.de:7:/dCachePools/pool1 dcache.desy.de:7:/dCachePools/pool2" # # the various components # # # The following values have defaults and are optional. # # # DCACHE_DOOR_SRM : admin node # DCACHE_DOOR_GSIFTP,DCACHE_DOOR_GSIDCAP,DCACHE_DOOR_DCAP : pool nodes # DCACHE_DOOR_SRM="dcache.desy.de" DCACHE_DOOR_GSIFTP="dcache.desy.de" DCACHE_DOOR_GSIDCAP="dcache.desy.de" DCACHE_DOOR_DCAP="dcache.desy.de" # # 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. # RESET_DCACHE_CONFIGURATION=yes RESET_DCACHE_PNFS=yes RESET_DCACHE_RDBMS=yes # # # 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/dCacheConfigure.sh -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: java.net.ConnectException: Connection refused java.net.ConnectException: Connection refused at java.net.PlainSocketImpl.socketConnect(Native Method) ....
This is fine as well, Please watch the dCache webpages for all cells to be become ready.
http://<adminHost>:2288/cellInfo
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>
e.g.:
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>
e.g.:
psu removefrom pgroup default pool1_1