Revision as of 00:21, 19 February 2009 by Fgalan (talk | contribs) (EDIV package installation)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Installation Guide

Francisco José Martín Moreno (fjmartin at
Miguel Ferrer Cámara (mferrer at
Fermín Galán Márquez (galan at
version 1.0, Oct 14th, 2008


To get EDIV working, some configuration must be done in the EDIV controller and also in the hosts that form the cluster. There are two different types of installation: semi-automatic, through a deb package, or manual using a tzg compressed file.


Installing from .deb package

An APT repository has been set up for EDIV related packages (which is the same than the used for VNUML). The installation procedure is as follows:

  1. Add the following line to the /etc/apt/sources.list file:
  2. deb binary/
  3. (Optional) If you want to consider testing version of EDIV, add also to/etc/apt/sources.list file:
  4. deb binary/
  5. Update package list:
  6. apt-get update
  7. Install EDIV along the packages it depends on
  8. apt-get install ediv

That's all! :)

Installing from source .tgz

This installation procedure has been developed and tested only under Ubuntu distributions. However, for other GNU/Linux distribution the procedure should be very close.

This type of installation involves the following steps:

Download the source file from the web

Is necessary to download the source file from here. Then it must be decompressed in the computer that is going to act as the EDIV controller in some folder (e.g., /usr/local/src).

Perl installation

  • Perl installation if it wasn't previously installed:
apt-get install perl
  • Perl Math Round library installation:
apt-get install libmath-round-perl
  • AppConfig and DBI perl modules installation:
apt-get install libappconfig-perl libdbi-perl

NOTE: The AppConfig and DBI modules can be installed in a manual way (although it is not recommended). To do so, download and install the AppConfig and DBI from their corresponding CPAN web. The files contain README files with instructions on how to install those modules. Most of the AppConfig and DBI installation failures are caused due to the lack of an installed compiler. Try reinstalling them after issuing the following command:

apt-get install build-essential

EDIV package installation

The installation process consists on placing some files from the .tar.gz package to the /usr/local hierarchy:

  • The perl modules 'perl-modules/EDIV/' and 'perl-modules/EDIV/' files must be moved to the directory for local Perl modules (e.g., /usr/local/share/perl/5.8.8/EDIV/).
  • The segmentation algorithms perl modules ('perl-modules/algorithms/' and 'perl-modules/algorithms/' are provided by default) files must be moved to '/usr/local/share/ediv/algorithms' directory.
  • The src/*.pl files must be placed in the /usr/local/bin/ directory.
  • The etc/cluster.conf file must be placed in the /usr/local/etc/ediv directory.
  • The doc/* files must be placed in /usr/local/share/doc/ediv

In order to automate this procedure, the package comes with a Makefile that automates all the operation. First, you have to find out what is your directory for Perl local modules (just execute 'perl -V' and check the value of the @INC variable, usually at the end of the output). Then, edit Makefile and configure the MODULES_INSTALL_DEST in the first line with that value (e.g. 'MODULES_INSTALL_DEST=/usr/local/share/perl/5.8.8').

After that, execute the install objectives:

make install
make modules-install

The Makefile include also targets to uninstall (just in the case you want to remove EDIV from your computer).

make uninstall
make modules-uninstall

NOTE: If make commands fail, it is possible that make package is not installed. Install it with the following command:

apt-get install make


SSH client

apt-get install openssh-client

NOTE: check that and files in the /root/.ssh/ folder have been generated after ssh client installation. These files contain the ssh keys necessary for ssh operation. If these files don't exist, issue the following command to generate them:

ssh-keygen -t rsa
ssh-keygen -t dsa


  • Install MySQL database:
apt-get install mysql-server
  • Install some program to easily check the database contents (this step is optional). Some suggestions: phpmyadmin or mysql-query-browser.

    To install both of them use the following commands:
apt-get install phpmyadmin
apt-get install mysql-query-browser

NOTE: under ubuntu distributions some problems have been reported after phpmyadmin installation. They are solved issuing the following command:

ln -s /usr/share/phpmyadmin/ /var/www
  • Run the database structure creation script (provided by the EDIV source compressed file or deb package): create

NOTE: This script will fail if you don't edit your /etc/ediv/cluster.conf file to include your database password before running it.

Cluster hosts configuration

The following tasks must be done before using some computer as a cluster member:

VNUML installation

A working installation of VNUML 1.8.4rc1 or newer is required. Following the VNUML installation manual is recommended.

SSH server installation

  • Install the ssh server:
apt-get install openssh-server
  • SSH server restart:

    Issue the following command to ensure proper ssh operation:
/etc/init.d/ssh restart

EDIV controller SSH key importation

Importing the EDIV controller ssh key is required in the members of the cluster. This way the controller can execute commands as root in the hosts that are members of the cluster without requiring a password.

To import the key, edit the host /root/.ssh/authorized_keys file, adding the contents of the controller /root/.ssh/ file.

NOTE: to check if the ssh keys exist and how to create them, read VNUML wiki

NOTE: if the controller computer is going to be a member of the cluster (controller and host at the same time) it's necessary to import its own key to the /root/.ssh/authorized_keys file and ssh server installation.

IMPORTANT REMINDER: EDIV is now installed, but before trying to use it, a cluster configuration file must be created as described in the user manual.