sahara/doc/source/userdoc/installation.guide.rst

4.4 KiB

Sahara Installation Guide

We recommend you install in a way that will can keep your system in a consistent state. Ways we recommend to install Sahara are:

  • Install via Fuel
  • Install via RDO Havana+
  • Install into virtual environment

To install with Fuel

  1. Start by following Quickstart to install and setup OpenStack
  2. Enable Sahara service during installation

To install with RDO

  1. Start by following the Quickstart to install and setup OpenStack.
  2. Install the sahara-api service with,
$ yum install openstack-sahara
  1. Configure the sahara-api service to your liking. The configuration file is located in /etc/sahara/sahara.conf.
  2. Start the sahara-api service with,
$ service openstack-sahara-api start

To install into a virtual environment

  1. First you need to install python-setuptools, python-virtualenv and python headers using your OS package manager. The python headers package name depends on OS. For Ubuntu it is python-dev, for Red Hat - python-devel. So for Ubuntu run:
$ sudo apt-get install python-setuptools python-virtualenv python-dev

For Fedora:

$ sudo yum install gcc python-setuptools python-virtualenv python-devel

For CentOS:

$ sudo yum install gcc python-setuptools python-devel
$ sudo easy_install pip
$ sudo pip install virtualenv
  1. Setup virtual environment for sahara:
$ virtualenv sahara-venv

This will install python virtual environment into sahara-venv directory in your current working directory. This command does not require super user privileges and could be executed in any directory current user has write permission.

  1. You can install the latest sahara release version from pypi:
$ sahara-venv/bin/pip install sahara

Or you can get Sahara archive from http://tarballs.openstack.org/sahara/ and install it using pip:

$ sahara-venv/bin/pip install 'http://tarballs.openstack.org/sahara/sahara-master.tar.gz'

Note that sahara-master.tar.gz contains the latest changes and might not be stable at the moment. We recommend browsing http://tarballs.openstack.org/sahara/ and selecting the latest stable release.

  1. After installation you should create configuration file. Sample config file location depends on your OS. For Ubuntu it is /usr/local/share/sahara/sahara.conf.sample-basic, for Red Hat - /usr/share/sahara/sahara.conf.sample-basic. Below is an example for Ubuntu:
$ mkdir sahara-venv/etc
$ cp sahara-venv/share/sahara/sahara.conf.sample-basic sahara-venv/etc/sahara.conf

check each option in sahara-venv/etc/sahara.conf, and make necessary changes

  1. If you use Sahara with MySQL database, then for storing big Job Binaries in Sahara Internal Database you must configure size of max allowed packet. Edit my.cnf and change parameter:
...
[mysqld]
...
max_allowed_packet          = 256M

and restart mysql server.

  1. Create database schema:
$ sahara-venv/bin/python sahara-venv/bin/sahara-db-manage --config-file sahara-venv/etc/sahara.conf upgrade head
  1. To start Sahara call:
$ sahara-venv/bin/python sahara-venv/bin/sahara-api --config-file sahara-venv/etc/sahara.conf

Note:

One of the Sahara features <features>, Anti-Affinity, requires a Nova adjustment. See Enabling Anti-Affinity <enable-anti-affinity> for details. But that is purely optional.

Make sure that your operating system is not blocking Sahara port (default: 8386). You may need to configure iptables in CentOS and some other operating systems.

To get the list of all possible options run:

$ sahara-venv/bin/python sahara-venv/bin/sahara-api --help

Further consider reading overview for general Sahara concepts and plugins for specific plugin features/requirements