Jump to: navigation, search


< Rally
Revision as of 09:55, 10 September 2013 by Alexei-kornienko (talk | contribs) (HowTo Rally)

HowTo Rally

Installing rally on fresh ubuntu

Install these requirements:

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

Clone rally:

 git clone https://github.com/stackforge/rally.git

Install rally requirements in venv:

 virtualenv rally/.venv
 . rally/.venv/bin/activate
 pip install -r requirements.txt


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#'

Work with Rally