Tutkovics / benchmarking

Benchmarks over Kubernetes

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Application profiling

Offline profiling applications in Kubernetes cluster. Run more measurements and get efficient scaling information.

Under refactor

Will use Python kubernetes client and helm install instead deploy from manually created .yaml files. Hopefully we can use Prometheus offical python libary.

Usage

  1. Get project

    Clone the repo:
    $ git clone git@github.com:Tutkovics/benchmarking.git
    $ cd benchmarking

    Install Python requirements:
    $ python3 -m venv env
    $ source env/bin/activate # on linux
    $ pip3 install -r requirements.txt

    Run the profiling: $ python benchmarking/src/manin.py <config_file.yaml>

  2. Requirements

  • Has installed Helm.
  • Has a kubeconfig file, to target cluster
  1. Environment
    • Kubernetes 1.16 (Minikube: v1.4.0)
    • Helm v3.2.0

Architecture

UML diagram

Notes

  1. benchmark.py
  • Was the previous project's main file
  1. Tasks
  • Integrate Kubernetes client
  • Integrate Helm client
  • Integrate Prometheus client
  • Integrate Locust (loadgenerator)

About

Benchmarks over Kubernetes

License:Apache License 2.0


Languages

Language:Python 100.0%