worstcase / blockade

Docker-based utility for testing network failures and partitions in distributed applications

Home Page:http://blockade.readthedocs.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

randomly bringing up and down containers

ratulmukh opened this issue · comments

Is there a nice elegant way to spin up a couple hundred containers, and then randomly bring down and up a percentage of containers over time? I am trying to create a network with a few hundred nodes, and check how fault tolerant the network is to node failures.

There is not support for this, but I think it's a great idea and I'll keep it in mind for a future release. There are a couple of problems in the way right now:

  1. blockade doesn't support stopping/starting containers in a deployment, only interfering with. I'm hoping to get this into the next release soon.
  2. the blockade config language is pretty simple, so you'd have to lay out each of your hundreds of containers individually in the config. Ideally there'd be an easy way to say "launch 200 of these"

Thanks, David! I look forward to the day you bring out these features.

The latest version,The two idea can be fulfilled?

The latest version helps with this, but randomly starting/stopping containers is not supported. However I think you could now accomplish your goal with a little scripting around blockade. There are now start and stop commands (http://blockade.readthedocs.org/en/latest/commands.html#start), and also a count parameter to launch many copies of a container (http://blockade.readthedocs.org/en/latest/config.html#count). So you could write a script that launches a blockade, then uses whatever logic you want to select containers to start/stop.

I could also see it as a feature in blockade itself, but it's not something I need at this time, so would have to come from an outside contribution.

Another user contributed the ability to randomly start/stop containers. It will be present in the imminent 0.3.0 release. Does this address your needs?