HCL cluster

From HCL
Revision as of 16:46, 26 April 2010 by Davepc (talk | contribs) (General Information)

Jump to: navigation, search

http://hcl.ucd.ie/Hardware

General Information

http://csserver.ucd.ie/~bbecker/hcl/network.jpg

Layout of the Cluster
Layout of the Cluster

The hcl cluster is heterogeneous in computing hardware & network ability.

Nodes are from Dell, IBM, and HP, with Celeron, Pentium 4, Xeon, and AMD processors ranging in speeds from 1.8 to 3.6Ghz. Accordingly architectures and parameters such as Front Side Bus, Cache, and Main Memory all vary.

Operating System used is Debian “squeeze” with Linux kernel 2.6.32.

The network hardware consists of two Cisco 24+4 port Gigabit switches. Each node has two Gigabit ethernet ports - each eth0 is connected to the first switch, and each eth1 is connected to the second switch. The switches are also connected to each other. The bandwidth of each port can be configured to meet any value between 8Kb/s and 1Gb/s. This allows testing on a very large number of network topologies, As the bandwidth on the link connecting the two switches can also be configured, the cluster can actually act as two separate clusters connected via one link.

The diagram below shows a schematic of the cluster.


Cluster Specification

HCL Cluster 2.0

In preperation for a fresh installation of operating systems on HCL Cluster the follow list of packages are requested. After upgrade is complete, this list will become a reference for installed software: Done

  • autoconf
  • automake
  • fftw2
  • git
  • gfortran
  • gnuplot
  • libtool
  • netperf
  • octave3.2
  • qhull
  • subversion
  • valgrind
  • gsl-dev
  • vim
  • python
  • mc
  • openmpi-bin
  • openmpi-dev
  • evince
  • libboost-graph-dev
  • libboost-serialization-dev
  • r-cran-strucchange
  • graphviz
  • doxygen

new hcl node install & configuration log

new heterogeneous.ucd.ie install log

Compilation on HCL

  • Add to your environment
export ARCH=`uname -r`
if [ `hostname` == 'hcl13.ucd.ie' ]; then
    export ARCH=`uname -r`smp
fi
  • On hcl09 and hcl10, create a directory $HOME/$ARCH. Actually, 2.4.27-2-386 and 2.6.11-1.1369_FC4smp directories will be created.
  • Configure all the software on hcl09 and hcl10, with --prefix=$ARCH

Installing Precompiled Software on HCL Fedora Core 4 nodes

If you need a piece of software that is not already installed you may not need to compile it from source. It is possible to install pre-compiled packages to folders in your home directory<ref>http://www.ajay.ws/2009/7/10/install-a-rpm-in-home-directory-as-non-root</ref>, and this is often easier than compiling from source. The cluster uses two different OSes at present, Fedora Core 4 and Debian. These both have different pre-compiled package formats, RPM for Fedora and .deb for Debian. Unfortunately relocating the default install directory of a .deb package is troublesome, so this article only pertains to Fedora.

Fedora Core 4 is was EOL'd in 2006<ref>http://fedoraproject.org/wiki/LifeCycle/EOL</ref>and 4 years later there are few remaining resources supporting it. You can still find Fedora 4 RPMs at the following links (long unsearchable lists, give them time to load):

http://ftp.heanet.ie/pub/fedora-archive/fedora/linux/core/4/i386/os/Fedora/i386

http://ftp.heanet.ie/pub/fedora-archive/fedora/linux/extras/4/i386

http://ftp.heanet.ie/pub/fedora-archive/fedora/linux/core/updates/4/i386

What follows is an example of installing the 'gv' (ghostview) package into a folder defined by an environment variable: $APPSDIR (which has a similar to purpose to $ARCH in the previous section).

  1. find an RPM file for your desired package
  2. create rpm database directory in local tree (only do this once):
    mkdir -p $APPSDIR/var/lib/rpm
  3. initialise rpm database (do this only once also):
    rpm --initdb --root $APPSDIR
  4. check what files are installed by the RPM file of your package
    rpm -qlp gv-3.6.1-4.fc4.i386.rpm
  5. test for dependencies (install will not be successful and command will report an error accessing the root rpm database, ignore this):
    rpm -ivh gv-3.6.1-4.fc4.i386.rpm
    if a dependency is found, the RPM for it must also be found and appended to the rpm -i command (until no further dependencies are required).
  6. do actual install to our local folder:
    rpm --root $APPSDIR --relocate /usr=$APPSDIR --nodeps -ivh gv-3.6.1-4.fc4.i386.rpm

File:Example.jpg