##############
Administration
##############
This is a page for Administrators who wish to offer `hanythingondemand` on their PBS/Torque cluster. hanythingondemand is a particularly tricky project as it integrates several pieces of tecchnology (Torque, MPI, Java, Hadoop, on Python) and as such we don't have an out of the box installation procedure yet.
=============
Prerequisites
=============
Here's an overview of the dependencies:
* A cluster using `Torque `_
* `environment-modules `_ (used to test HOD) to manage the environment
* `Python` - 2.7.*
* `Easybuild `_ - we use Easybuild for installing software and hanythingondemand isn't tested without it.
* `mpi4py `_
* `vsc-base `_ - Used for command line parsing.
* `vsc-mympirun `_ - Used for setting up the MPI job.
* `pbs_python `_ - Used for interacting with the PBS (aka Torque) server.
* `Netifaces `_
* `Netaddr `_
* `Java`
* `Hadoop binaries `_
======
Torque
======
To use hanythingondemand you must be running a cluster that uses `Torque `_ as the resource manager.
===================
Environment Modules
===================
We use `environment modules `_ in conjunction with EasyBuild. You do not require environment-modules, however you will need to sort out all the paths for your users if you elect to not use it.
---------
Easybuild
---------
The following dependencies are installable using `Easybuild `_. They should be pulled in when using the ``eb hanythingondemand-${VERSION}.eb --robot`` command:
------
mpi4py
------
EasyBuild scripts for mpi4py are available `here `_
--------
vsc-base
--------
EasyBuild scripts for vsc-base are available `here `_
------------
vsc-mympirun
------------
EasyBuild scripts for vsc-mympirun are available `here `_
---------
netifaces
---------
EasyBuild scripts for netifaces are available `here `_
-------
netaddr
-------
EasyBuild scripts for netaddr are available `here `_
----------
pbs_python
----------
EasyBuild scripts for pbs_python are available `here `_
-----
Java
-----
We use the Oracle JVM which isn't directly installable from EasyBuild since you need to register on the website to get the files.
.. note:: You'll need to manually download the `JDK tarballs `_ (requires registration) and seed them to EasyBuild.
------
Hadoop
------
We use `Cloudera's Hadoop distribution and have tested with chd5.3.1
`_.