A distributed heavy load generator
Ruby
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
config
lib
report
test
Gemfile
Gemfile.lock
LICENSE
README.md
Rakefile
wasp.gemspec

README.md

WaspswithRainofStings

By arkemiq (arkemiq@gmail.com)

Description

Wasp is a distributed heavy load generator in Ruby inspired by beeswithmachineguns(https://github.com/newsapps/beeswithmachineguns).

This is a utility of arming(create and install load program) many wasps (micro EC2 instances) from multiple regions(EC2 zones) to attack (load test) targets(web applications).

Installation

$ git clone https://github.com/arkemiq/wasp.git
$ cd wasp
$ bundle install

Configuring EC2 credentials

Wasps uses aws-sdk gem to communicate with EC2 and supports all the same methods of storing credentials that it does. Set access key and secret key for config/aws.yml to access your EC2 account.

access_key_id: xxxxxxxxxxxxxxxxx
secret_access_key: xxxxxxxxxxxxxxxxx

Running

Usage:

To set credentials:
  $ wasp set [AWS Credential file]

To launch 6 wasps:
  - launch 6 instances in us-east zone with private key named wasps
  $ wasp up -k wasps -s 6 

  - launch 5 instances in us-west-2 zone with ami-8cb33ebc AMI, username ubuntu and private key named wasps
  $ wasp up -k wasps -z us-west-2 -a ami-8cb33ebc -s 5 -l ubuntu

To check status:
  $	wasp status

To equip weapon(default: apachebench):
  $ wasp equip

To attack target with 1000 requests and 100 concurrent users per each wasp:
  $ wasp attack -n 1000 -c 100 -u http://target_site

To attack target with incrementally increase wasps from 1 to 10000 during 60 seconds:
  $ wasp rattack -p 10000:60 -u http://target_site

To sleep wasps:
  $ wasp down

To see options:
  $ wasp help

Note: the default EC2 security group is called 'wasps' and by default it locks out SSH access.

Note: if you didn't specify a zone for EC2 instances, it use default zone 'us-east'.

Please remember to do this--we aren't responsible for your EC2 bills.

Notice! (PLEASE READ)

If you decide to use the Wasps, please keep in mind the following important notice: they are, more-or-less a distributed denial-of-service attack in a fancy package and, therefore, if you point them at any server you don’t own you will behaving unethically, have your Amazon Web Services account locked-out, and be liable in a court of law for any downtime you cause.

You have waspn warned.

License

MIT.