Benchmark application
This is a benchmark application for kubernetes. It is used to test network performance of a kubernetes cluster.
Demo of the application
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
resultsfolder. - Images and visualizations of data and analysis are located in the
results/imagesfolder.
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
Metadata
Release files for k8perf 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| k8perf-1.0.2.tar.gz | 3.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| k8perf-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.1 MB
Release files / k8perf-1.0.2.tar.gz
| Download URL | k8perf-1.0.2.tar.gz |
|---|---|
| Size | 3.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
249f4b0ade40fc84adfdc1ae46053d59e05787dbcaa92e4fdb3db70fadde2290
|
|
BLAKE2b-256 checksum How to use checksums |
16e2d4856741198a410e823de01523d751a1ceacf25aac15c4e54b88e8701877
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.11.1
|
Release files / k8perf-1.0.2-py3-none-any.whl
| Download URL | k8perf-1.0.2-py3-none-any.whl |
|---|---|
| Size | 16.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0fcd31ace30ee8ff9c2944946bd1ae674085e477ced591a8ea2e4c6ffae8cb70
|
|
BLAKE2b-256 checksum How to use checksums |
4a342214f34f4e9f6e411146149c5e9856daa04f393f8d3e2c3ae325fa77bda2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.11.1
|