eucalyptus / calyptos

Tool for Managing Eucalyptus
BSD 2-Clause "Simplified" License
5 stars 14 forks source link

Calyptos

This is a tool for managing your Eucalyptus deployments

Documentation

Install

On a CentOS 7 system:

yum install -y python-devel gcc git python-setuptools libffi-devel openssl-devel libyaml-devel
git clone https://github.com/eucalyptus/calyptos
cd calyptos
python setup.py install

Lifecycle Actions

The cloud lifecycle is broken down into many phases:

Configure

The configuration is written in YAML. Examples can be found in the examples directory. For a full list of attributes that can be set look at the Eucalyptus Cookbook attributes. Edit the etc/environment.yml file to match your deployment topology and configuration.

Validate

In this stage we run validations against the configuration file to ensure that the deployment will succeed as we expect.

calyptos validate -e <your-environment-file>

Prepare

This step ensures that our dependencies are installed on all servers and that we can SSH to all of them. It is nice to know that we are on good footing before we get going with the deployment.

calyptos prepare -p <root-ssh-password-for-deployment-systems>

Provision

Provisions the rest of the system or update the configuration of an existing system. If you change anything in your environment.yml, you can use this to push that change out to your cloud.

calyptos provision -p <root-ssh-password-for-deployment-systems>

Execute

Executes a command across a set of hosts. By default all hosts run the command but using the -r parameter you can run on only a particular set of hosts, categorized by role.

calyptos execute -p <root-ssh-password-for-deployment-systems> -e <your-environment-file> '<your-command-here>'

Debug

This step will grab all necessary information from a system in order to provide artifacts for use in debugging a problem. In addition, this step will do the following: