Jump to: navigation, search

Difference between revisions of "Rally/HowTo"

(Installing rally on fresh ubuntu)
(HowTo Rally)
Line 19: Line 19:
 
   . rally/.venv/bin/activate
 
   . rally/.venv/bin/activate
 
   pip install -r requirements.txt
 
   pip install -r requirements.txt
 +
 +
 +
= Setup =
 +
 +
 +
== 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 ===
 +
[http://twitter.github.io/zipkin/index.html 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 [http://cassandra.apache.org/ 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 ==
 
== Work with Rally ==

Revision as of 09:55, 10 September 2013

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


Setup

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