Skip to content

Kitware/HPCCloud-deploy

Repository files navigation

Note: The vagrant deployment will soon be depreciated. We will be moving to a containerized solution.

HPC Cloud / Cumulus VM Deploy

Linux

Example usage

ansible-playbook -vvvv \
--private-key ec2.pem \
-u ubuntu \
-i ansible/inventory/test  \
   ansible/site.yml \
-e girder_version=master \
-e cumulus_version=master

Local Installation

If VirtualBox, Vagrant and Ansible are installed, cumulus may also be deployed on a local virtual machine by running vagrant up from the project root directory. Otherwise each of these components may be installed on 64 bit Ubuntu 14.04 as follows:

Install VirtualBox 5.0

First you must add the Oracle repository to Ubuntu's package manage apt by executing the following commands:

wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -

sudo sh -c 'echo "deb http://download.virtualbox.org/virtualbox/debian trusty contrib" >> /etc/apt/sources.list.d/virtualbox.list'

Then update and install virtualbox 5.0

sudo apt-get update && sudo apt-get install virtualbox-5.0

Install Ansible

Add the ansible repository to apt and install ansible

sudo apt-get install software-properties-common
sudo apt-add-repository ppa:ansible/ansible
sudo apt-get update && sudo apt-get install ansible
Install Vagrant 1.8.1

Ubuntu's default version of vagrant (1.4.3) is nearly 2 years old, to use this deployment script you must have a newer version of vagrant installed. To do this download the following .deb file and install it. important: if you already have vagrant installed, please do a sudo apt-get remove --purge vagrant before running the following commands:

wget https://releases.hashicorp.com/vagrant/1.8.1/vagrant_1.8.1_x86_64.deb -O /tmp/vagrant_1.8.1_x86_64.deb

sudo dpkg --install /tmp/vagrant_1.8.1_x86_64.deb && rm /tmp/vagrant_1.8.1_x86_64.deb
Creating a HPCCloud VM
  • Clone this repo
  • Run vagrant up in the folder that you cloned this repository too
  • Point your browser to http://localhost:8888

##OSX

  • Clone this repo
  • Download and install the following in order:
  • Run vagrant up in the folder that you cloned this repository too
    • It will err if there's anything already running on the ports it needs (definitely 8888, 8080, probably 27017)

#HPC traditional cluster requirements

In order to use a cluster with HPCCloud the following requirements need to be available:

  • The Bash shell.

  • The curl command line utility. On an Ubuntu distro this can be installed using the following command:

       sudo apt-get install curl
    
  • ParaView is used for running visualization tasks on the cluster so needs to be installed, the latest release can be downloaded here. ParaView can also be build from source

Local Development Installation

if HPCCloud, girder, or cumulus are available in the folder above the HPCCloud-deploy checkout and the environment variable DEVELOPMENT is set to 1, then these folders will be linked through the VM rather than checked out from github. E.g. with the directory structure:

./HPCCloud-deploy/
                  Vagrantfile
                  ansible/
                  ...
./cumulus/
          ...
./hpccloud/
           ...
./girder/
         ...

running DEVELOPMENT=1 vagrant up from within the HPCCloud-deploy/ folder will link cumulus, hpccloud and girder folders. This should allow those folders to be changed locally, and for those changes to be picked up on restart from within the VM. Note: if a folder is not available it will be checkout from github. the HPCCloud folder must be lowercase!