perfscale-load-generator

command
v1.3.0-alpha.0 Latest Latest
Warning

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

Go to latest
Published: May 10, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

README

PerfScale Load Generator

The load generator is a tool aimed at stressing the Kubernetes and KubeVirt control plane by creating several objects (e.g., VM, VMI, and VMIReplicaSet). The main functionality it provides can be summarized as follows:

  • Create the objects declared in a workload's description
  • Watch for the cluster to have the expected number of object
  • Wait for objects to reach their desired state

This tool introduces load into the system and the relevant metrics and results can be collected using the perfscale-audit tool.

CLI

When running the benchmark, you must configure KUBECONFIG environment variable of providing the absolute path to the kubeconfig file in the parameter -kubeconfig.

The tool runs the default workload example, but you should provide them to the file containing the workload configuration in the parameter -workload.

Deleting a workload requires an explicit request by the user. Run the same command used to create the workload but with the -delete flag.

  -delete
        Delete a workload
  -kubeconfig string
        absolute path to the kubeconfig file
  -master string
        kubernetes master url
  -verbose int
        log level for V logs (default 2)
  -workload string
        path to the file containing the worload configuration (default "tools/perfscale-load-generator/examples/workload/kubevirt-density/kubevirt-density.yaml")

Workload

There is an example of the workload configuration in kubevirt-density.yaml

The workload configuration parameters are defined as follows:

name: kubevirt-burst-test
// How long a job will run.  steady-state jobs it will always run until the timesout
timeout: 5m
// Number of objects to manage
count: 5
// Test type - burst or steady-state
type: "burst"
// Object to manage
object:
  templateFile: vmi-ephemeral.yaml
  inputVars:
    containerPrefix: quay.io/kubevirt
    containerImg: cirros-container-disk-demo
    containerTag: ""
    namespace: default
Workload Types

The Burst Test tests how quickly a system can move between different capacities. A good example of a Burst workload is a sudden spike in demand for compute resources to handle a massive increase of users.

The Steady State Test tests how quickly a system can move between on how well the system can maintain max capacity or near max capacity. For example, a system may create a certain number of warm resources

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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