Installing a WMT executor: Difference between revisions

From CSDMS
m Add content
m Change variable name
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
A '''WMT executor''', part of the CSDMS Web Modeling Tool,
==Installing a WMT executor==
runs standalone or coupled model components on a computational resource.
 
 
A WMT '''executor''' (also referred to as an '''execution server''') is the part of the CSDMS Web Modeling Tool
that runs standalone or coupled model components on a computational resource.


Requirements:
Requirements:
* An internet-accessible MacOSX or Linux computational resource
* An internet-accessible MacOSX or Linux computational resource
* <code>curl</code>
* <code>git</code>
* <code>git</code>


==Installation directory==


Start by selecting an install directory for the WMT executor on the computational resource.
Start by selecting an install directory, accessible to all users, on the computational resource.
The installation directory needs to be accessible to all users.
For example, on the CSDMS HPCC, '''''beach''''', WMT executors are installed in <code>/home/csdms/wmt</code>.
For example, on the CSDMS HPCC, '''''beach''''', WMT executors are installed in <code>/home/csdms/wmt</code>.


Line 16: Line 18:
  cd /home/csdms/wmt
  cd /home/csdms/wmt
  mkdir _testing && cd _testing
  mkdir _testing && cd _testing
  install=$(pwd)
  root=$(pwd)
 
==Install the CSDMS toolchain==


Install a local Python distribution for use by the executor.
Install a local Python distribution for use by the executor.
Line 25: Line 25:


  curl http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -o miniconda.sh
  curl http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -o miniconda.sh
  bash ./miniconda.sh -f -b -p $install/conda
  bash ./miniconda.sh -f -b -p $root/conda
  export PATH=$install/conda/bin:$PATH
  export PATH=$root/conda/bin:$PATH


Replace "Linux" with "MacOSX" in the <code>curl</code> statement above
Replace "Linux" with "MacOSX" in the <code>curl</code> statement above
Line 46: Line 46:
  conda install -c csdms cca-bocca
  conda install -c csdms cca-bocca


Clone and install <code>pymt</code>,
Clone and install the Python Modeling Tools, PyMT,
using the changes from the ''mcflugen/fix-for-new-bmi'' branch.
using the changes from the ''mcflugen/fix-for-new-bmi'' branch.
(The latest changes aren't yet in the CSDMS 'dev' channel.)
(The latest changes aren't yet in the CSDMS ''dev'' channel.)


  mkdir opt && cd opt
  mkdir opt && cd opt
Line 61: Line 61:
we recommend installing with "develop" for this and all
we recommend installing with "develop" for this and all
Python packages built from source.
Python packages built from source.
PyMT needs <code>cfunits</code> to run.
conda install -c csdms cfunits-python
Clone and install <code>bmi-babel</code>.
(The latest changes aren't yet in the ''dev'' channel.)
cd $root/opt
git clone https://github.com/bmi-forum/bmi-babel
cd bmi-babel
python setup.py develop
The CSDMS <code>scripting</code> package is a new requirement for <code>bmi-babel</code>.
conda install -c csdms/channel/dev scripting
Finally, clone and install <code>wmt-exe</code>.
cd $root/opt
git clone https://github.com/csdms/wmt-exe
cd wmt-exe
python setup.py develop
Check the installation by calling <code>wmt-info</code>:
cd $root
wmt-info
which, on the executor I've set up, returns:
[beach.colorado.edu]
host_nickname = beach
ssh_port = 22
host = beach.colorado.edu
directory = /home/csdms/wmt/_testing/conda
CSDMS model components can now be [[Installing_components_into_a_WMT_executor|installed]] into this WMT executor.




--[[User:Mpiper|Mpiper]] ([[User talk:Mpiper|talk]]) 10:53, 23 September 2016 (MDT)
--[[User:Mpiper|Mpiper]] ([[User talk:Mpiper|talk]]) 10:53, 23 September 2016 (MDT)

Latest revision as of 14:13, 23 September 2016

Installing a WMT executor

A WMT executor (also referred to as an execution server) is the part of the CSDMS Web Modeling Tool that runs standalone or coupled model components on a computational resource.

Requirements:

  • An internet-accessible MacOSX or Linux computational resource
  • curl
  • git


Start by selecting an install directory, accessible to all users, on the computational resource. For example, on the CSDMS HPCC, beach, WMT executors are installed in /home/csdms/wmt.

Change to the install directory you've selected and define a shell variable for future use.

cd /home/csdms/wmt
mkdir _testing && cd _testing
root=$(pwd)

Install a local Python distribution for use by the executor. CSDMS IF recommends miniconda, a minimal distribution based on the Anaconda Python distribution.

curl http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -o miniconda.sh
bash ./miniconda.sh -f -b -p $root/conda
export PATH=$root/conda/bin:$PATH

Replace "Linux" with "MacOSX" in the curl statement above if installing on a Mac.

Use the Anaconda package manager, conda, to install a set of packages used by the executor.

conda install ipython numpy scipy netcdf4

(Although ipython isn't required, it's handy for debugging.)

Using conda and the CSDMS Anaconda channel, install cca-bocca, which should fetch and install several dependencies for the CSDMS toolchain, including cca-spec-babel, ccaffeine, and cca-bocca.

conda install -c csdms cca-bocca

Clone and install the Python Modeling Tools, PyMT, using the changes from the mcflugen/fix-for-new-bmi branch. (The latest changes aren't yet in the CSDMS dev channel.)

mkdir opt && cd opt
git clone https://github.com/csdms/pymt
cd pymt
git branch mcflugen/fix-for-new-bmi
git checkout mcflugen/fix-for-new-bmi
git pull origin mcflugen/fix-for-new-bmi
python setup.py develop

To aid debugging, we recommend installing with "develop" for this and all Python packages built from source.

PyMT needs cfunits to run.

conda install -c csdms cfunits-python

Clone and install bmi-babel. (The latest changes aren't yet in the dev channel.)

cd $root/opt
git clone https://github.com/bmi-forum/bmi-babel
cd bmi-babel
python setup.py develop

The CSDMS scripting package is a new requirement for bmi-babel.

conda install -c csdms/channel/dev scripting

Finally, clone and install wmt-exe.

cd $root/opt
git clone https://github.com/csdms/wmt-exe
cd wmt-exe
python setup.py develop

Check the installation by calling wmt-info:

cd $root
wmt-info

which, on the executor I've set up, returns:

[beach.colorado.edu]
host_nickname = beach
ssh_port = 22
host = beach.colorado.edu
directory = /home/csdms/wmt/_testing/conda

CSDMS model components can now be installed into this WMT executor.


--Mpiper (talk) 10:53, 23 September 2016 (MDT)