Personal tools
Start HERE!
Documents that acts as a starting point and guides the user through all instructions.
Experiment Software deployment procedure
To deploy Hydra Clients using the Experiment Software procedure, follow these steps:
- Get the tgz file from here
- Get the installation script from here
- Get the JDL from here
- Save the tgz file in a SE accessible via GridFTP
- Modify the script accordingly, for example by substituting the name of the SE with the one you are using
- Create a voms proxy with software manager role, e.g. voms-proxy-init --voms euindia:/euindia/Role=SoftwareManager
- Launch the job in the CE where you want to install the clients.
- Retrieve the ouput to check if there were any errors.
- Add the SW tag e.g. VO-euindia-HYDRA-CLIENT by invoking the UI command (with Software Manager role) such as:
lcg-tags --ce ce01.euig-cdac-pnq.ernet.in --vo euindia --add --tags VO-euindia-HYDRA-CLIENT
IMPORTANT! The tgz file has the clients pre-configured for EUINDIA Hydra deployed server. The configuration file is found in hydra-clients/conf/services-hydra.xml. If you are installing the clients in another production configuration, please untar the files, modify the configuration, tar back everything, and launch the job.
EUINDIA Deployed servers are:
- https://egrid-se-01.pd.infn.it:22000/glite-data-hydra-service/
- https://baciuco.grid.sissa.it:22000/glite-data-hydra-service/
- https://ictpgrid-ce-1.ictp.it:22000/glite-data-hydra-service/
IMPORTANT! The WN must allow outgoing connections to the ports where Hydra servers are listening. We suggest 22000 for Hydra servers, because usually WN have the GLOBUS_PORT_RANGE open for outgoing connections, and it falls betwen 20000 and 25000.
IMPORTANT! Upon successful installation, the Hydra Client commands wil be accessible from the directory $VO_EUINDIA_SW_DIR/hydra-client/bin
The TAG that will be published will be VO-euindia-HYDRA-CLIENT
To change them, modify accordingly the TGZ file and installation script.
Creating your own Hydra Client TGZ from scratch
These are the steps we followed in order to create the TGZ we are supplying in this site:
- Get the client tgz from the links at the end of the main Hydra instructions.
- Merge the two; you should get a directory structure similar to:
[ecorso@egrid-ui rpm]$ ls -la hydra-client total 20 4 drwxr-xr-x 2 ecorso ecorso 4096 Jun 13 12:02 bin 4 drwxr-xr-x 3 ecorso ecorso 4096 Feb 6 10:25 include 4 drwxr-xr-x 2 ecorso ecorso 4096 Jun 13 12:07 lib 4 drwxr-xr-x 4 ecorso ecorso 4096 Feb 6 10:25 share
- Under lib, add the missing symbolic link as explained in the main Hydra instructions.
- There are some missing libraries that must be added manually; they are:
libcgsi_plugin_gsoap* libglite_data_util*
We got them from UI installation. So overall, the lib subdirectory should look like:
[ecorso@egrid-ui lib]$ ls -la total 2236 drwxr-xr-x 2 ecorso ecorso 4096 Jun 13 12:07 . drwxrwxr-x 7 ecorso ecorso 4096 Jun 12 14:58 .. -rwxr-xr-x 1 ecorso ecorso 53099 Jun 13 11:55 libcgsi_plugin_gsoap_2.7.so -rwxr-xr-x 1 ecorso ecorso 53099 Jun 13 11:55 libcgsi_plugin_gsoap_2.7.so.1.2.1 -rw-r--r-- 1 ecorso ecorso 1094196 Jan 14 17:43 libglite_data_eds_simple.a lrwxrwxrwx 1 ecorso ecorso 33 Jun 12 14:25 libglite_data_eds_simple.so -> libglite_data_eds_simple.so.2.0.0 lrwxrwxrwx 1 ecorso ecorso 33 Jun 12 14:25 libglite_data_eds_simple.so.2 -> libglite_data_eds_simple.so.2.0.0 -rwxr-xr-x 1 ecorso ecorso 928664 Jan 14 17:43 libglite_data_eds_simple.so.2.0.0 -rw-r--r-- 1 ecorso ecorso 14212 Jun 13 2007 libglite_data_util.a lrwxrwxrwx 1 ecorso ecorso 27 Jun 13 12:07 libglite_data_util.so -> libglite_data_util.so.1.2.3 lrwxrwxrwx 1 ecorso ecorso 27 Jun 13 12:07 libglite_data_util.so.1 -> libglite_data_util.so.1.2.3 -rwxr-xr-x 1 ecorso ecorso 47767 Jun 13 2007 libglite_data_util.so.1.2.3 -rw-r--r-- 1 ecorso ecorso 33362 Feb 6 10:25 libglite_security_ssss.a lrwxrwxrwx 1 ecorso ecorso 31 Jun 12 14:25 libglite_security_ssss.so -> libglite_security_ssss.so.1.0.0 lrwxrwxrwx 1 ecorso ecorso 25 Jun 12 14:32 libglite_security_ssss.so.0 -> libglite_security_ssss.so lrwxrwxrwx 1 ecorso ecorso 31 Jun 12 14:25 libglite_security_ssss.so.1 -> libglite_security_ssss.so.1.0.0 -rwxr-xr-x 1 ecorso ecorso 28444 Feb 6 10:25 libglite_security_ssss.so.1.0.0
- Add this script to the bin subdirectory; essentially what we did was to wrap the commands so that LD_LIBRARY_PATH and other environment variables are properly set. Create symbolic links and rename files, so that bin content looks like:
[ecorso@egrid-ui bin]$ ls -la total 312 drwxr-xr-x 2 ecorso ecorso 4096 Jun 13 12:02 . drwxrwxr-x 7 ecorso ecorso 4096 Jun 12 14:58 .. lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-chmod -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 38817 Jan 14 17:43 glite-eds-chmod.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-decrypt -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 17639 Jan 14 17:43 glite-eds-decrypt.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-encrypt -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 17889 Jan 14 17:43 glite-eds-encrypt.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-get -> hydra_wrapper.sh lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-getacl -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 38292 Jan 14 17:43 glite-eds-getacl.real -rwxr-xr-x 1 ecorso ecorso 24164 Jan 14 17:43 glite-eds-get.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-key-register -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 12114 Jan 14 17:43 glite-eds-key-register.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-key-unregister -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 11699 Jan 14 17:43 glite-eds-key-unregister.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-put -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 28430 Jan 14 17:43 glite-eds-put.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-rm -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 13995 Jan 14 17:43 glite-eds-rm.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-eds-setacl -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 40670 Jan 14 17:43 glite-eds-setacl.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-ssss-join-key -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 10500 Feb 6 10:25 glite-ssss-join-key.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-ssss-join-passwd -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 10277 Feb 6 10:25 glite-ssss-join-passwd.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-ssss-split-key -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 10752 Feb 6 10:25 glite-ssss-split-key.real lrwxrwxrwx 1 ecorso ecorso 16 Jun 12 14:28 glite-ssss-split-passwd -> hydra_wrapper.sh -rwxr-xr-x 1 ecorso ecorso 10758 Feb 6 10:25 glite-ssss-split-passwd.real -rwxrwxr-x 1 ecorso ecorso 251 Jun 13 12:02 hydra_wrapper.sh
- Create the conf subdirectory and put in there the hydra client configuration file. So the final directory structure looks like:
[ecorso@egrid-ui hydra-client]$ ls -la total 28 drwxrwxr-x 7 ecorso ecorso 4096 Jun 12 14:58 . drwxrwxr-x 3 ecorso ecorso 4096 Jun 13 12:09 .. drwxr-xr-x 2 ecorso ecorso 4096 Jun 13 12:02 bin drwxrwxr-x 2 ecorso ecorso 4096 Jun 13 15:11 conf drwxr-xr-x 3 ecorso ecorso 4096 Feb 6 10:25 include drwxr-xr-x 2 ecorso ecorso 4096 Jun 13 12:07 lib drwxr-xr-x 4 ecorso ecorso 4096 Feb 6 10:25 share
- Now just TGZ it.