Jump to: navigation, search

Rally/installation

< Rally
Revision as of 09:05, 24 October 2013 by Aovchinnikov (talk | contribs)

Rally setup

Start with install the follwing requirements:

 sudo apt-get update
 sudo apt-get install libpq-dev git-core python-dev libevent-dev libssl-dev python-pip

If you would like to install Rally in virtualenv install virtualenv, create one and activate it:

  sudo pip install -U virtualenv
  virtualenv .venv
  . .venv/bin/activate


Then clone & install rally:

 git clone https://github.com/stackforge/rally.git && cd rally
 python setup.py install

The you need to create Rally database:

 openstack-rally-manage db recreate

Now you are ready to configure Rally:

sudo mkdir /etc/rally 
sudo cp ~/git/rally/etc/rally/rally.sample.conf /etc/rally/rally.conf
sudo vim /etc/rally.conf


Create Rally Database

openstack-rally-manage db recreate
# the above will default to a sqlite database under the python dist-packages dir.
# to configure a different location define the connection property under the database group of rally.conf.
# this can lead to problems when (re)creating the database if the user you are running as does not have rwx
# permissions to py dist-packages dir.
# for example:
# [database]
# connection = sqlite:////tmp/rally.sqlite

Zipkin setup

Note. Zipkin is not fully integrated in Rally yet, so this step can be skipped for now.

Version 0.1

Initial version has many configuration options hardcoded and some things needs to be done manually. Configuration and setup will be improved in future versions.

Currently rally is tested to run on x64 Ubuntu 12.04 server

Install data collector node

Zipkin is used to collect profiling information.

Zipking uses a lot of RAM so collector node should have at least 6 Gb of RAM. Later we may choose alternative collector/visualization solution.

Install with:

$ git clone https://github.com/twitter/zipkin.git

Zipkin uses sqlite by default but it doesn't work under production load. Currently we use Cassandra to store collected data Install Cassandra DB:

$ wget http://mirror.metrocast.net/apache/cassandra/2.0.0/apache-cassandra-2.0.0-bin.tar.gz
$ tar xvzf apache-cassandra-2.0.0-bin.tar.gz
$ sudo mkdir /var/lib/cassandra
$ sudo chmod a+rw /var/lib/cassandra
$ sudo mkdir /var/log/cassandra
$ sudo chmod a+rw /var/log/cassandra
$ apache-cassandra-2.0.0/bin/cassandra &> cassandra-out

Create DB schema for zipkin:

$ apache-cassandra-2.0.0/bin/cassandra-cli -host localhost -port 9160 -f zipkin/zipkin-cassandra/src/schema/cassandra-schema.txt

Zipkin needs 3 services running. For the first time start each one separately and wait for it to load completely so it could download all dependencies

$ bin/collector
$ bin/query
$ bin/web

Later you can run them all together via screen:

$ screen -dmS zipkin-collector bin/collector cassandra
$ screen -dmS zipkin-query bin/query cassandra
$ screen -dmS zipkin-web bin/web

Collector node needs to be reachable from all cloud servers and it's IP should be defined in configuration file in deploy section:

'collectors': {
  'zipkin': '#data_collector_ip#'
}