Experimental eNvironment for OpenStack


Keywords
OpenStack, Evaluation, Grid'5000, Chameleon, Vagrant, docker, grid5000, kolla-ansible, reproducible-research, virtualbox
License
CNRI-Python-GPL-Compatible
Install
pip install enos==8.0.0a9

Documentation

Doc Status Pypi Code style License

Join us on gitter : Join the chat at https://gitter.im/BeyondTheClouds/enos

About Enos

Enos aims at reproducible experiments of OpenStack. Enos relies on Kolla Ansible and helps you to easily deploy, customize and benchmark an OpenStack on several testbeds including Grid'5000, Chameleon and more generally any OpenStack cloud.

Installation

Enos is best installed via pip. It is tested with python3.7+:

pip install enos

Quick Start

For the quick-start, we will bring up an OpenStack on VirtualBox. VirtualBox is free and works on all major platforms. Enos can, however, work with many testbeds including Grid'5000 and Chameleon.

First, make sure your development machine has VirtualBox and Vagrant installed. Then, ensure that you have at least 10 GiB of memory.

To deploy your fist OpenStack with enos:

enos new --provider=vagrant:virtualbox  # Generate a `reservation.yaml` file
enos deploy

Enos starts three virtual machines and configures Kolla Ansible to deploy the OpenStack control plane on the first one, the network related services (Neutron, HAProxy, RabbitMQ) on the second one, and use the last one as a compute node. Note that the full deployment may take a while (around 30 minutes to pull and run all OpenStack docker images).

You can customize the deployed services and the number of virtual machines allocated by modifying the generated reservation.yaml file. Calls enos --help or read the documentation for more information.

Acknowledgment

Enos is developed in the context of the Discovery initiative.

Links