WaspswithRainofStings

By arkemiq ([email protected])

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.