Prerequisite Component Installation
|Software||Version||WMS collector||Factory||User collector||Submit||Glidein Frontend||Comments|
|Linux OS||y||y||y||y||y||A reasonably recent HTCondor-supported Linux OS (RH/SL 6 and 7 tested at this time).|
v8.2.3+(BOSCO or Ganglia)
|y||y||y||y||The installer will use the tarball or rpm to install and
configure HTCondor inline. It is recommended to use v8
Batch Submission via BOSCO:
If you want to add batch resources (via BOSCO) you need HTCondor v8.2.2+. This version requirement is for the WMS Pool, submitting glideins and the HTCondor client, used to setup the BOSCO resource (bosco_cluster_add). Other components can use previous recommended versions of HTCondor.
monitoring via Ganglia. GlideinWMS provides configuration files for it.
|OSG client||current version||y||y||y||y||Needed to generate GRID/VOMS proxies. See below for instructions.|
|HTTP server||y||y||Apache, TUX or whatever server of choice. This port will need open access to the internet, so worker nodes can download data from this service. See below for instructions.|
|RRDTool||V1.2.18+||y||y||The perl-Time-HiRes rpm is needed for this package. Please verify all dependencies: rrdtool, perl-rrdtool and python-rrdtool. These packages are available via yum using EPEL in EL6/7 or can be searched in RPMFind.|
|M2Crypto||v0.17+||y||y||This can be installed using yum, if available. Or via tarball.|
You will need to install an HTTP server for GlideinWMS to be used for staging and monitoring. This needs to be installed on a port accessible to the outside. The server should be installed on the same node, but a different node can be used as long as the web area is writable from this one. In particular, the staging directory will need to be accessible to glideins so they can download appropriate software.
The choice of web server is independent of GlideinWMS, but this documentation will only show the example of Apache Web Server. For most systems, this can be installed via yum:
yum install httpd
Other options are available from Apache here.
There are several recommended tasks you may want to also do post-installation to secure and prepare your web server.
- Disable all unneeded modules. Glideinwms does not any non-standard modules and many can be disabled. A list of example modules to keep enabled is below: 'access_module','include_module','log_config_module', 'mime_magic_module','expires_module','deflate_module', 'headers_module','setenvif_module','mime_module', 'status_module','autoindex_module','negotiation_module', 'dir_module','imap_module','alias_module','rewrite_module', 'cache_module','file_cache_module','mem_cache_module', 'authz_host_module','authz_default_module'.
- Disable any (unneeded) extensions in /etc/httpd/conf.d
- Recommended: disable indexes (Options -Indexes) in all directories/locations, such as frontend/factory stage/monitor directories.
- Enable HTTPS connections for monitor pages.
- If HTTPS is enabled on the Factory/Frontend web server "http:" connections to the /monitor pages will redirect to "https:". If HTTPs is not enabled, the /monitor pages behave as they did previously.
- The /stage pages are intended to be cached and will never be redirected.
- If for some reason https is enabled and HTTPS redirection of monitor pages is not desired the appropriate block of /etc/httpd/conf.d/gwms-(factory|frontend).conf may be commented out.
The OSG Worker Node Client (formerly known as VDT Client and OSG Client) is now available as a set of RPMs. OSG provides a complete set of instructions that that we recommend. Here you can follow the instructions to install OSG Client on RHEL 6 and 7 based systems (including CentOS and SL). First you will need to enable the EPEL and OSG repositories. It is also advisable to enable the yum priorities module in order to guarantee the correct packages. For more detail, you have everything explained step by step here.
You will also need the python module for RRDTool (currently v1.7.0). Many systems come with packages for it; if possible use that.
You can install it via yum. It is available in the Scientific Linux Repository (slf-primary):
yum install rrdtool rrdtool-python
If installing as root is not an option, you can build from the sources, as the glidein factory
user, and put the python libraries into the PYTHON_PATH.
The source code can be downloaded from here. Beware: The build process has several dependencies that make it complicated. Use this option only if you cannot install from RPMs (or similar).
You will need the M2Crypto python library. However, if you have the OSG repositories enabled, you can install it via yum:
yum install m2crypto
If your system does not come with m2crypto package, or you do not can/want install it as root, compile it from source as
the glidein factory user.
The source code can be downloaded from here.
The build process is very easy:
python setup.py build
python setup.py install --root <base dir>
Finally, add M2Crypto site-packages into the PYTHONPATH, possibly in the .profile, .bashrc and/or in the .cshrc.
The exact path is system specific. On a 32bit system with python 2.3.x it will look like this:
export PYTHONPATH=$PYTHONPATH:<base dir>/usr/lib/python2.3/site-packages/
Otherwise, download the tarball (with flot), and untar it. You will need to point the installer to this directory. The installer will copy the library files to the Web directories during the installation or reconfig steps.