EMI-2 package installation EMI-2 package installation

Introduction

EMI provides a range of products for scientific computing infrastructures. Which products you install will depend on the type of infrastructure you are running, for example, if you want to join your site to your national grid infrastructure, you should find out from your NGI which EMI products they support. No matter what products you want to install, there are certain prerequisite steps that you should perform in order to install any EMI product. This tutorial will bring you through these steps and get you to the point where you can begin to install your chosen EMI products.

Notes on installing production systems

If you are installing a production system it is very important that you read the EMI 2 Generic Installation and Configuration Guide  which explains the prerequisites to installing EMI products, how to configure the EMI repositories, how to get host certificates, etc. This tutorial will include some of the same steps, but it is not intended as a definitive reference for configuring and installing the EMI products.
 
All EMI components are fully supported on SL5/x86_64 and SL6/x86_64 with EPEL as the repository for external packages and dependencies. Some EMI components are also supported on Debian. You can download Scientific Linux from https://www.scientificlinux.org/.

Configuring the repositories

The DAG repository is a repository of add-on RPM packages for Red Hat/Fedora based systems. Packages in this repository can conflict with the versions required by EMI products, so you should disable this repository if it is enabled on your system.
To remove the DAG repository you should set enabled=0 in the file /etc/yum.repos.d/dag.repo and then run
 
$ yum clean all
 
Next you will need to add the EPEL repository. The EPEL repository contains many of the external dependencies of the EMI products.
 
The EPEL repository for Scientific Linux 5 is at http://download.fedoraproject.org/pub/epel/5/x86_64/
 
While for Scientific Linux 6 it is at http://download.fedoraproject.org/pub/epel/6/x86_64/
 
To configure the repository you should install the package epel-release.  For example, to install on SL5 run the command:
 
$ rpm -Uvh http://download.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
 
While on SL6 use the command:
 
$ rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm
 
Next you should configure the EMI repositories. The yum repository is located at http://emisoft.web.cern.ch/emisoft/index.html, you can browse through the available versions here and find the repository most suitable for your distribution.
 
First import the EMI GPG key:
 
$ rpm --import http://emisoft.web.cern.ch/emisoft/dist/EMI/2/RPM-GPG-KEY-emi
 
Then to install, for example, the EMI 2 repositories for Scientific Linux 5 (x86_64) you should run the command:
 
$ rpm -ivh http://emisoft.web.cern.ch/emisoft/dist/EMI/2/sl5/x86_64/base/emi-release-2.0.0-1.sl5.noarch.rpm
 
While for SL6/x86_64 you should run
 
$ rpm -ivh http://emisoft.web.cern.ch/emisoft/dist/EMI/2/sl6/x86_64/base/emi-release-2.0.0-1.sl6.noarch.rpm
 
Note that some packages are also available for Debian, but this tutorial does not cover their installation. To enable the Debian repositories you can run the following commands, then read the EMI 2 Generic Installation and  Configuration Guide  for more information.
 
$ wget http://emisoft.web.cern.ch/emisoft/dist/EMI/2/debian/dists/squeeze/main/binary-amd64/emi-release_2.0.0-1.deb6.1_all.deb
$ dpkg -i emi-release_2.0.0-1.deb6.1_all.deb 
 
At this point you might  update your installation to ensure that you have the latest versions of all necessary packages before installing any EMI packages:
 
$ yum update
 
However, it is strongly recommended that you do not use an automatic update procedure of any kind on the EMI middleware repositories. Sometimes middleware updates require non-trivial configuration changes or a reconfiguration of the service. This could involve service restarts, new configuration files, etc., which makes it difficult to ensure that automatic updates will not break a service. When an update has been released you should read the update information provided by each service and do the upgrade manually.

Other requirements

The yum-protectbase and yum-priorities plugins ensure that the correct version of a package is installed (e.g. the version from the EMI repository, rather than another repository). It is important to install these two packages:
 
$ yum install yum-protectbase yum-priorities
 
A general requirement of any grid system is that the nodes are synchronized. Typically this is done via the use of NTP
 
$ yum install ntp
 
You should also install the packages cron and logrotate as many EMI components rely on their presence.
 
$ yum install cron
or
$ yum install vixie-cron
or
$ yum install cronie
 
$ yum install logrotate

Installing EMI-2 components

Now you are ready to install your EMI components
 
To do this first determine which EMI components you want to install on your node by looking at the product information on the EMI website http://www.eu-emi.eu/products
 
Then run
 
$ yum install <meta-package/package name>
$ yum update
 
Congratulations ! You have now installed an EMI package for the first time. Please note that different EMI services have different configuration details. Various guides covering installation and configuration of specific services will be online soon. Please also see our CA configuration tutorial.
 
Note that when installing any EMI component it is helpful to review the release notes on the EMI webpage products list. Here you will find information on any known issues with the current released version of each package, along with workarounds and fixes for these. If you encounter problems when installing or testing any of the components please check the release notes to see if your problem is a known issue.