neonvm-migration-loadtest

command module
v0.0.0-...-7e88508 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 28, 2023 License: MIT Imports: 22 Imported by: 0

README

NeonVM live migration loadtest tool

What this tool do:

  • run NeonVM virtual machines in k8s cluster, each machine ased on postgres:15-bullseye docker image
  • for each VM run separate pod with pgbench configured to attack PostgreSQL running inside VM via overlay network
  • randomly trigger VM live migrations (each ~5 min in average) for each VM

TL;DR

build

go build

get usage info

./neonvm-migration-loadtest -help

simple run

./neonvm-migration-loadtest

NOTE: tool will use default kubernetes config (~/.kube/config) and your current kubernetes context, you can override it by -kubeconfig arg

run 100 virtual machines during 1 hour without autoscale feature

./neonvm-migration-loadtest -vm-count=100 -duration=3600 -autoscale=false

Run as kubernetes job

apply RBAC

kubectl apply -f manifests/rbac.yaml

run 100 virtual machines during 1 hour without autoscale feature

kubectl apply -f manifests/loadtest.yaml

NOTE: edit loadtest.yaml (args for loadtest container) if you want change load test settings before run

Monitoring

NOTE: manifests adapted for Prometheus managed by kube-prometheus-stack

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL