4. Administrator guide

This administrator guide is meant for people who would like to deploy and manage REANA clusters. (The researchers are probably interested in reading the User guide instead.)

4.1. Architecture

REANA system is composed of multiple separated components that permit to define and manage computing cloud resources that run computational workflows on the cloud.


REANA uses the following technologies:

4.2. Components

REANA system is composed of multiple separated components that are developed independently. The components are usually published as Python packages (user client, administrator cluster management) or as Docker images (internal REANA components).

4.2.1. reana-client

REANA command line client for end users.

4.2.2. reana-cluster

REANA component providing utilities to manage cluster instance.

4.2.5. reana-server

REANA component providing API server replying to client queries.

4.2.9. reana-workflow-monitor

REANA component permitting to monitor running workflows.

4.3. Deployment

4.3.1. Local deployment using Minikube

REANA cloud uses Kubernetes container orchestration system. The best way to try it out locally is to set up Minikube (minikube version 0.23.0 is known to work the best).

The minikube can be started as follows:

$ minikube start --kubernetes-version="v1.6.4"

REANA cluster can be easily deployed by means of the reana-cluster helper script. The typical usage scenario goes as follows:

$ # install reana-cluster utility
$ mkvirtualenv reana-cluster
$ pip install reana-cluster
$ # deploy new cluster and check progress
$ reana-cluster init
$ reana-cluster status
$ # set environment variables for reana-client
$ eval $(reana-cluster env)

For more information, please see REANA-Cluster’s Getting started guide.

4.4. Next steps

For more information, you can explore REANA-Cluster documentation.