Skip to main content

A kubernetes network performance testing tool

Project description

Benchmark application

This is a benchmark application for kubernetes. It is used to test network performance of a kubernetes cluster.

k8perf logo

Demo of the application

k8perf demo video

Run the application

install this python package, a place where you have a kubernetes config file, and run the following command:

pip install k8perf
python -m k8perf run

You can get a json output from the command line by adding the --json flag.

Contributing

If you want to contribute, here is how to get your envirorment setup

Virtualenv

you can activate the virtualenv with the following command:

source bin/activate

if you're not using the script, remember to install the module with the following command:

    pip install --editable .

Releases

Github actions most of the work for you.

  • At every push to main a new version is released to pypi. These are released at "pre-release" status.
  • To make a new release, create a new tag with the following format: X.Y.Z. This will trigger a new release to pypi.

You just need to create a new release on github, and the action will take care of the rest.

Run iperf 3 benchmark on kubernetes without tool

There are two files in the folder benchmarks/bandwidth:

  • the server iperf3-server.yaml
  • the client iperf3-client.yaml

Results

  • The results of our experiments are located in the results folder.
  • Images and visualizations of data and analysis are located in the results/images folder.

TODO

  • add a way to specify the namespace
  • Run http benchmark until the server is up to 90% cpu usage
  • loading bar for the benchmark
  • Stream the output of the benchmark (Use streamlit)
  • Move plot to "[plot]" depedencies, and make local imports in main, with error message helping to install plots

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

k8perf-1.0.2.tar.gz (3.1 MB view hashes)

Uploaded Source

Built Distribution

k8perf-1.0.2-py3-none-any.whl (16.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page