GoogleCloudPlatform / PerfKitBenchmarker

PerfKit Benchmarker (PKB) contains a set of benchmarks to measure and compare cloud offerings. The benchmarks use default settings to reflect what most users will see. PerfKit Benchmarker is licensed under the Apache 2 license terms. Please make sure to read, understand and agree to the terms of the LICENSE and CONTRIBUTING files before proceeding.
https://googlecloudplatform.github.io/PerfKitBenchmarker/
Apache License 2.0
1.89k stars 480 forks source link

Add a container workload #134

Open voellm opened 9 years ago

voellm commented 9 years ago

Now that the world has gone "container" crazy and most platforms have support for it, it makes sense to have some comparative workloads with and without containers.

For fun... http://www.networkworld.com/article/2888180/cloud-computing/everyones-going-container-crazy.html

Input on what to do here is very welcome.

meteorfox commented 9 years ago

I'm not volunteering for this right now, but perhaps we could build a primitive that allows to run any of the existing benchmarks within a container, and it can support several container engines (docker, lxc, rocket, lmctfy, etc).

My concern is how do we handle all the configuration options, which are crucial for performance, like not containerizing the containers network stack (uses --net=host), different choice of filesystems (AUFS vs others), container-to-container networking, etc.

The other approach would be to run a workload that is already containerized and treat it as another benchmark, then all it would require is to install the container engine, and pull the image from a registry (like docker), and run it. The downside with this approach is that it would require to containerize multiple workloads.

One interesting workload that has been containerized is the Acme Air benchmark from IBM. I believe it simulates a 'cloudy' service for an airline, where you book seats for flights, and it even includes a JMeter script to generate load against it.

Here's the uncontainerized version https://github.com/acmeair/acmeair, and the docker version: https://github.com/aspyker/acmeair-netflixoss-dockerlocal

voellm commented 8 years ago

At this point we have docker workloads, kubernetes, and meso all part of PKB.

@meteorfox - Think is this addressed?