Skip to content

malini-kamalambal/csi-marconi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 

Repository files navigation

Load Tests

Marconi uses Tsung (Tsung 1.5 or higher) to run load tests.

Table of Contents

Setting up the Load Generators

  1. Install tsung in all the machines. (See Section: Installing Tsung from Source). One of the machines will be the controller, & the rest will be clients.

  2. Enable ssh connection with no passphrase, between all the machines.

  3. Update the /etc/hosts in all the machines. The controller:/etc/hosts should have entries pointing to all the clients, as well as itself. All the clients, should have an entry for the controller in /etc/hosts. (We want to avoid the overhead of a dns lookup.)

  4. Increase file descriptors available, in all the tsung machines. Add the following to /etc/security/limits.conf:

    root soft  nofile 9000
    root hard  nofile 65000
    
  • reboot.
  • Verify the change has taken place by 'umlimit –n'.

Installing Tsung from Source

  1. Create ubuntu 13.04 server
  2. apt-get update
  3. apt-get install gnuplot-nox libtemplate-perl libhtml-template-perl libhtml-template-expr-perl
  4. apt-get install gnuplot erlang make git autoconf
  5. wget http://tsung.erlang-projects.org/dist/tsung-1.5.0.tar.gz
  6. tar –xzvf tsung-1.5.0.tar.gz
  7. cd tsung-1.5.0
  8. chmod 755 configure
  9. ./configure
  10. make
  11. make install

Steps to run the load tests

  1. Clone this git repo to your tsung controller.
  2. Copy the .tsung directory from load/*/.tsung to the home directory (~), on your tsung controller.
    • happy_path directory has load tests with only positive scenarios.
    • all_scenarios directory has tests with positive and negative scenarios
  3. Update the tsung.xml
    • Update the <clients> section of ~/.tsung/tsung.xml, to point to your tsung machines. (Do not use IP addresses here.)
    • Update the <servers> section, to point to your marconi server.
    • Replace all auth tokens, with a valid auth token. (This is intentionally manual, to avoid accidentally stressing the production auth.)
  4. Update ~/.tsung/projectid.csv, to include the tenant ID of your account.
  5. Create queues with the names in ~/.tsung/existingqueue.csv, if your account doesn't have them already.
  6. Start tsung in the controller with 'tsung start'

Generating Test Reports

  1. After the test is complete, cd to the log directory generated by the tests in the controller machine. (eg. cd ~/.tsung/logs/20130701-1635)
  2. Generate html reports with '/usr/lib/tsung/bin/tsung_stats.pl'
  3. You can run a simple web server to view reports, with 'python -m SimpleHTTPServer'
  4. Enjoy your performance reports!!

Security Tests

To Be Updated

About

Load & Security tests for Marconi

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published