WMS

From Gridkaschool

Description

Wms.png

Services and Ports

GridFTP                              2811
WM Proxy                             7443
CEMON                                5120
CondorCollector                      9618 (TCP and udp)
LB (Logging and Bookkeeping service) 9000,9001,9003

Installation of WMS/LB

Repositories

The repositories are placed in directory /etc/yum.repos.d/.

All yum *.repos are available at http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/

The needed repositories are:

 dag.repo
 glite-LB.repo 
 glite-WMS.repo  
 lcg-CA.repo

Get them with

 rm -f /etc/yum.repos.d/dag.repo
 wget http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.1/dag.repo
 wget http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.1/glite-LB.repo
 wget http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.1/glite-WMS.repo
 wget http://grid-deployment.web.cern.ch/grid-deployment/glite/repos/3.1/lcg-CA.repo

Installing the packages

Now the software has to be installed. After installation a update should be done (or before installation, but this might cause some conflicts with packages).

yum install glite-LB glite-WMS ca_GermanGrid

Instead of ca_GermanGrid you can install lcg-CA. Then you install all EGEE CAs.

Configuration

As for most grid services you need a host certificate for the WMS and LB with the right permissions. For more deatils please refer to Host certificates.

VOMS Certificates

For the LHC VOs and some other EGEE VOs the certificates from the VOMS servers are installed automatically. For other VOs (e.g. HERA VOs HONE and ZEUS or the DECH VO) you need to fetch these certificates. The official source is the CIC-Portal VO cards(You need a valid user certificate installed in your browser).

Alternatively you can just fetch the certificate directly from here:

wget http://gkswiki.fzk.de/images/8/82/Glite-io.scai.fraunhofer.de.pem -O /etc/grid-security/vomsdir/glite-io.scai.fraunhofer.de.pem

Info: The VOMS certificates for the LHC VOs are automatically installed with the lcg-CA package.

Variables

Before the configuration script can be run the site-info.def has to be adapted. Required Variables are:

BDII_HOST                # Toplevel BDII
SITE_NAME                # Name of the site
SITE_EMAIL               # Email of the site
LB_HOST                  # LB host (WMS and LB should be installed in this course)
MYSQL_PASSWORD           # Password to access the MySQL database
VOS                      # VOs to be supported by WMS/LB
MON_HOST                 # Monbox on site
GROUPS_CONF              # Config file for groups
USERS_CONF               # Config file for users
VO_<VO>_VOMSES           # VOMS server of the VO <VO>; need one line per VO

users.conf

For every supported VO you need to define user in the users.conf file. For details please go to users.conf.

groups.conf

For every group of a VO you are supporting you need to define it in the groups.conf file. For details please refer to groups.conf.


Configuration with yaim

Run yaim:

/opt/glite/yaim/bin/yaim -c -s /root/yaim/site-info.def -n glite-WMS -n glite-LB

Testing the service

You need a valid VOMS proxy (of a VO that is supported on the WMS) for most of the following tests.

Replace gks-0-065.fzk.de by the hostname of your WMS.

GridFTP (from UI):

 edg-gridftp-ls gsiftp://gks-0-065.fzk.de:2811/tmp
 globus-url-copy file:///bin/bash gsiftp://gks-0-065.fzk.de:2811/tmp/FTP_test
 edg-gridftp-ls gsiftp://gks-0-065.fzk.de:2811/tmp/
 edg-gridftp-rm gsiftp://gks-0-065.fzk.de:2811/tmp/FTP_test

WM Proxy (from UI):

First you need a simple jdl file, e.g.:

cat test.jdl

Executable = "/bin/hostname";

Then you can test the job matching:

  glite-wms-job-list-match -a -e https://gks-0-065.fzk.de:7443/glite_wms_wmproxy_server test.jdl

  Connecting to the service https://gks-0-065.fzk.de:7443/glite_wms_wmproxy_server

  ==========================================================================

                     COMPUTING ELEMENT IDs LIST
  The following CE(s) matching your job requirements have been found:

        *CEId*
 - grid-ce3.desy.de:2119/jobmanager-lcgpbs-default
 - grid-ce3.desy.de:2119/jobmanager-lcgpbs-testing
 [...]

Condor processes (on WMS):
These three processes should be always there (IDs might be different). With jobs being processed there are much more Condor processes.

[root@gks-0-065 ~]# /opt/condor-6.8.4/bin/condor_q


-- Submitter: gks-0-065.fzk.de : <141.52.174.65:22989> : gks-0-065.fzk.de
 ID      OWNER            SUBMITTED     RUN_TIME ST PRI SIZE CMD
   1.0   glite           9/1  15:22   0+00:46:35 R  0   9.8  condorc-launcher
   2.0   glite           9/1  15:22   0+00:46:29 R  0   9.8  condorc-advertiser
   3.0   glite           9/1  15:22   0+00:46:29 R  0   9.8  condorc-authorizer

3 jobs; 0 idle, 3 running, 0 held

Administration

In case the WMS is overloaded for each job submission attemt or a job list match an error message is thrown and the client switches to the next WMS endpoint. The limits for the single values are set in file /opt/glite/etc/glite_wms.conf in section WorkloadManagerProxy. The configuration entry is called OperationLoadScripts. The default is

OperationLoadScripts =  [
    jobSubmit  =  "${GLITE_LOCATION}/sbin/glite_wms_wmproxy_load_monitor --oper jobSubmit --load1 22 --load5 20 --load15 18 --memusage 99 --diskusage 95 --fdnum 1000 --jdnum 1500  --ftpconn 30";
    jobRegister  =  "${GLITE_LOCATION}/sbin/glite_wms_wmproxy_load_monitor --oper jobRegister --load1 22 --load5 20 --load15 18 --memusage 99 --diskusage 95 --fdnum 1000 --jdnum 1500 --ftpconn 30";
  ];

The considered values are the load (1,5,15), the memory and disk usage, job number and some more. You can list the current values for your system by executing

/opt/glite/sbin/glite_wms_wmproxy_load_monitor

All sandboxes are located under /var/glite/SandboxDir/<XY>/<job ID> where <xy> are the first two characters of the job ID.

[root@gks-1-127 ~]# ls /var/glite/SandboxDir/
2X  4S  8e  99  A7  BA  DK  eH  ii  JD  lj  
Ll  OD  p-  Q9  rM  Ru  T-  vl  ym  3v  5w  
8R  9l  -b  cz  eF  EN  j4  l2  lJ  nl  oK  
Pi  QF  Rp  SE  UD  Ws  ZH

You have to take care that the disk space for /var is big enough.




Go back to gLite Administration Course