Skip to content

CRD API Docs

Packages:

perf.kubestone.xridge.io/v1alpha1

Package v1alpha1 is the v1alpha1 version of the API.

Resource Types:

    BenchmarkStatus

    (Appears on: Drill, Fio, Ioping, Iperf3, Pgbench, Qperf, Sysbench)

    BenchmarkStatus describes the current state of the benchmark

    Field Description
    running
    bool

    Running shows the state of execution

    completed
    bool

    Completed shows the state of completion

    Drill

    Drill is the Schema for the drills API

    Field Description
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    DrillSpec


    image
    ImageSpec

    Image defines the drill docker image used for the benchmark

    benchmarksVolume
    map[string]string

    BenchmarksVolume holds the content of benchmark files. The key of the map specifies the filename and the value is the content of the file. ConfigMap is created from the map which is mounted as benchmarks directory to the benchmark pod.

    benchmarkFile
    string

    BenchmarkFile is the entry point file (passed to –benchmark) specified to drill.

    options
    string
    (Optional)

    Options are appended to the options parameter set of drill

    podConfig
    PodConfigurationSpec
    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    status
    BenchmarkStatus

    DrillSpec

    (Appears on: Drill)

    DrillSpec defines benchmark run for drill load tester The benchmarkFile, and options is passed to drill as follows: drill [OPTIONS] –benchmark

    Field Description
    image
    ImageSpec

    Image defines the drill docker image used for the benchmark

    benchmarksVolume
    map[string]string

    BenchmarksVolume holds the content of benchmark files. The key of the map specifies the filename and the value is the content of the file. ConfigMap is created from the map which is mounted as benchmarks directory to the benchmark pod.

    benchmarkFile
    string

    BenchmarkFile is the entry point file (passed to –benchmark) specified to drill.

    options
    string
    (Optional)

    Options are appended to the options parameter set of drill

    podConfig
    PodConfigurationSpec
    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    Fio

    Fio is the Schema for the fios API

    Field Description
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    FioSpec


    image
    ImageSpec

    Image defines the fio docker image used for the benchmark

    builtinJobFiles
    []string
    (Optional)

    BuiltinJobFiles contains a list of fio job files that are already present in the docker image

    customJobFiles
    []string
    (Optional)

    CustomJobFiles contains a list of custom fio job files The exact format of fio job files is documented here: https://fio.readthedocs.io/en/latest/fio_doc.html#job-file-format The job files defined here will be mounted to the fio benchmark container

    cmdLineArgs
    string
    (Optional)

    CmdLineArgs are appended to the predefined fio parameters

    podConfig
    PodConfigurationSpec
    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    volume
    VolumeSpec

    Volume contains the configuration for the volume that the fio job should run on.

    status
    BenchmarkStatus

    FioSpec

    (Appears on: Fio)

    FioSpec defines the desired state of Fio

    Field Description
    image
    ImageSpec

    Image defines the fio docker image used for the benchmark

    builtinJobFiles
    []string
    (Optional)

    BuiltinJobFiles contains a list of fio job files that are already present in the docker image

    customJobFiles
    []string
    (Optional)

    CustomJobFiles contains a list of custom fio job files The exact format of fio job files is documented here: https://fio.readthedocs.io/en/latest/fio_doc.html#job-file-format The job files defined here will be mounted to the fio benchmark container

    cmdLineArgs
    string
    (Optional)

    CmdLineArgs are appended to the predefined fio parameters

    podConfig
    PodConfigurationSpec
    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    volume
    VolumeSpec

    Volume contains the configuration for the volume that the fio job should run on.

    ImageSpec

    (Appears on: DrillSpec, FioSpec, IopingSpec, Iperf3Spec, PgbenchSpec, QperfSpec, SysbenchSpec)

    ImageSpec defines parameters for docker image executed on Kubernetes

    Field Description
    name
    string

    Name is the Docker Image location including the tag

    pullPolicy
    PullPolicy
    (Optional)
    pullSecret
    string
    (Optional)

    PullSecret is an optional list of references to secrets in the same namespace to use for pulling any of the images

    Ioping

    Ioping is the Schema for the iopings API

    Field Description
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    IopingSpec


    image
    ImageSpec

    Image defines the ioping docker image used for the benchmark

    args
    string
    (Optional)

    Args are appended to the predefined ioping parameters

    podConfig
    PodConfigurationSpec
    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    volume
    VolumeSpec

    Volume contains the configuration for the volume that the ioping job should run on.

    status
    BenchmarkStatus

    IopingSpec

    (Appears on: Ioping)

    IopingSpec defines the ioping benchmark run

    Field Description
    image
    ImageSpec

    Image defines the ioping docker image used for the benchmark

    args
    string
    (Optional)

    Args are appended to the predefined ioping parameters

    podConfig
    PodConfigurationSpec
    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    volume
    VolumeSpec

    Volume contains the configuration for the volume that the ioping job should run on.

    Iperf3

    Iperf3 is the Schema for the iperf3s API

    Field Description
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    Iperf3Spec


    image
    ImageSpec

    Image defines the iperf3 docker image used for the benchmark

    serverConfiguration
    Iperf3ConfigurationSpec
    (Optional)

    ServerConfiguration contains the configuration of the iperf3 server

    clientConfiguration
    Iperf3ConfigurationSpec
    (Optional)

    ClientConfiguration contains the configuration of the iperf3 client

    udp
    bool
    (Optional)

    UDP to use rather than TCP. If enabled the ‘–udp’ parameter is added to iperf command line args

    status
    BenchmarkStatus

    Iperf3ConfigurationSpec

    (Appears on: Iperf3Spec)

    Iperf3ConfigurationSpec contains configuration parameters with scheduling options for the both the iperf3 client and server instances.

    Field Description
    PodConfigurationSpec
    PodConfigurationSpec

    (Members of PodConfigurationSpec are embedded into this type.)

    cmdLineArgs
    string
    (Optional)

    CmdLineArgs are appended to the predefined iperf3 parameters

    hostNetwork
    bool
    (Optional)

    HostNetwork requested for the iperf3 pod, if enabled the hosts network namespace is used. Default to false.

    Iperf3Spec

    (Appears on: Iperf3)

    Iperf3Spec defines the Iperf3 Benchmark Stone which consist of server deployment with service definition and client pod.

    Field Description
    image
    ImageSpec

    Image defines the iperf3 docker image used for the benchmark

    serverConfiguration
    Iperf3ConfigurationSpec
    (Optional)

    ServerConfiguration contains the configuration of the iperf3 server

    clientConfiguration
    Iperf3ConfigurationSpec
    (Optional)

    ClientConfiguration contains the configuration of the iperf3 client

    udp
    bool
    (Optional)

    UDP to use rather than TCP. If enabled the ‘–udp’ parameter is added to iperf command line args

    Pgbench

    Pgbench is the Schema for the pgbenches API

    Field Description
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    PgbenchSpec


    image
    ImageSpec

    Image defines the docker image used for the benchmark

    postgres
    PostgresSpec

    Postgres contains the configuration parameters for the PostgreSQL database that will run the benchmark

    initArgs
    string
    (Optional)

    InitArgs contains the command line arguments passed to the init container

    args
    string
    (Optional)

    Args contains the command line arguments passed to the main pgbench container

    podConfig
    PodConfigurationSpec
    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    status
    BenchmarkStatus

    PgbenchSpec

    (Appears on: Pgbench)

    PgbenchSpec describes a pgbench benchmark job

    Field Description
    image
    ImageSpec

    Image defines the docker image used for the benchmark

    postgres
    PostgresSpec

    Postgres contains the configuration parameters for the PostgreSQL database that will run the benchmark

    initArgs
    string
    (Optional)

    InitArgs contains the command line arguments passed to the init container

    args
    string
    (Optional)

    Args contains the command line arguments passed to the main pgbench container

    podConfig
    PodConfigurationSpec
    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    PodConfigurationSpec

    (Appears on: DrillSpec, FioSpec, IopingSpec, Iperf3ConfigurationSpec, PgbenchSpec, QperfConfigurationSpec, SysbenchSpec)

    PodConfigurationSpec contains the configuration for the benchmark pods

    Field Description
    annotations
    map[string]string
    (Optional)

    Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations

    podLabels
    map[string]string
    (Optional)

    PodLabels are added to the pod as labels.

    podScheduling
    PodSchedulingSpec
    (Optional)

    PodScheduling contains options to determine which node the pod should be scheduled on

    resources
    Kubernetes core/v1.ResourceRequirements
    (Optional)

    Resources required by the benchmark pod container More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/

    PodSchedulingSpec

    (Appears on: PodConfigurationSpec)

    PodSchedulingSpec encapsulates the scheduling related fields of a Kubernetes Pod

    Field Description
    affinity
    Kubernetes core/v1.Affinity
    (Optional)

    Affinity is a group of affinity scheduling rules.

    tolerations
    []Kubernetes core/v1.Toleration
    (Optional)

    If specified, the pod’s tolerations.

    nodeSelector
    map[string]string
    (Optional)

    A node selector represents the union of the results of one or more label queries over a set of nodes; that is, it represents the OR of the selectors represented by the node selector terms.

    nodeName
    string
    (Optional)

    NodeName is a request to schedule this pod onto a specific node. If it is non-empty, the scheduler simply schedules this pod onto that node, assuming that it fits resource requirements.

    PostgresSpec

    (Appears on: PgbenchSpec)

    PostgresSpec contains the configuration parameters for the PostreSQL database

    Field Description
    host
    string

    Host is the name of host to connect to

    port
    int

    Port number to connect to at the server host

    user
    string

    User is the PostgreSQL user name to connect as

    password
    string

    Password is to be used if the server demands password authentication

    database
    string

    Database is name of the database

    PullPolicy (string alias)

    (Appears on: ImageSpec)

    PullPolicy controls how the docker images are downloaded Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.

    Qperf

    Qperf is the Schema for the qperves API

    Field Description
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    QperfSpec


    image
    ImageSpec

    Image defines the qperf docker image used for the benchmark

    options
    string
    (Optional)

    Options are options for the qperf binary

    tests
    []string

    Tests are the tests that we would like to run

    serverConfiguration
    QperfConfigurationSpec
    (Optional)

    ServerConfiguration contains the configuration of the qperf server

    clientConfiguration
    QperfConfigurationSpec
    (Optional)

    ClientConfiguration contains the configuration of the qperf client

    status
    BenchmarkStatus

    QperfConfigurationSpec

    (Appears on: QperfSpec)

    QperfConfigurationSpec contains configuration parameters with scheduling options for the both the qperf client and server instances.

    Field Description
    PodConfigurationSpec
    PodConfigurationSpec

    (Members of PodConfigurationSpec are embedded into this type.)

    hostNetwork
    bool
    (Optional)

    HostNetwork requested for the qperf pod, if enabled the hosts network namespace is used. Default to false.

    QperfSpec

    (Appears on: Qperf)

    QperfSpec defines the Qperf Benchmark Stone which consist of server deployment with service definition and client pod.

    Field Description
    image
    ImageSpec

    Image defines the qperf docker image used for the benchmark

    options
    string
    (Optional)

    Options are options for the qperf binary

    tests
    []string

    Tests are the tests that we would like to run

    serverConfiguration
    QperfConfigurationSpec
    (Optional)

    ServerConfiguration contains the configuration of the qperf server

    clientConfiguration
    QperfConfigurationSpec
    (Optional)

    ClientConfiguration contains the configuration of the qperf client

    Sysbench

    Sysbench is the Schema for the sysbenches API

    Field Description
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    SysbenchSpec


    image
    ImageSpec

    Image defines the sysbench docker image used for the benchmark

    podConfig
    PodConfigurationSpec

    (Members of podConfig are embedded into this type.)

    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    options
    string
    (Optional)

    Options is a list of zero or more command line options starting with ‘–’.

    testName
    string

    TestName is the name of a built-in test (e.g. fileio, memory, cpu, etc.), or a name of one of the bundled Lua scripts (e.g. oltp_read_only), or a path to a custom Lua script.

    command
    string
    (Optional)

    Command is an optional argument that will be passed by sysbench to the built-in test or script specified with TestName. Command defines the action that must be performed by the test. The list of available commands depends on a particular test. Some tests also implement their own custom commands.

    status
    BenchmarkStatus

    SysbenchSpec

    (Appears on: Sysbench)

    SysbenchSpec contains the configuration parameters with scheduling options for the sysbench benchmark. The options, testName and command parameters are passed to the sysbench benchmarking application.

    Field Description
    image
    ImageSpec

    Image defines the sysbench docker image used for the benchmark

    podConfig
    PodConfigurationSpec

    (Members of podConfig are embedded into this type.)

    (Optional)

    PodConfig contains the configuration for the benchmark pod, including pod labels and scheduling policies (affinity, toleration, node selector…)

    options
    string
    (Optional)

    Options is a list of zero or more command line options starting with ‘–’.

    testName
    string

    TestName is the name of a built-in test (e.g. fileio, memory, cpu, etc.), or a name of one of the bundled Lua scripts (e.g. oltp_read_only), or a path to a custom Lua script.

    command
    string
    (Optional)

    Command is an optional argument that will be passed by sysbench to the built-in test or script specified with TestName. Command defines the action that must be performed by the test. The list of available commands depends on a particular test. Some tests also implement their own custom commands.

    VolumeSpec

    (Appears on: FioSpec, IopingSpec)

    VolumeSpec contains the Volume Definition used for the benchmarks. It can point to an EmptyDir, HostPath, already existing PVC or PVC to be created benchmark time.

    Field Description
    volumeSource
    Kubernetes core/v1.VolumeSource

    VolumeSource represents the source of the volume, e.g. EmptyDir, HostPath, Ceph, PersistentVolumeClaim, etc. PersistentVolumeClaim.claimName can be set to point to an already existing PVC or could be set to ‘GENERATED’. When set to ‘GENERATED’ The PVC will be created based on the PersistentVolumeClaimSpec provided to the VolumeSpec.

    persistentVolumeClaimSpec
    Kubernetes core/v1.PersistentVolumeClaimSpec
    (Optional)

    PersistentVolumeClaimSpec describes the persistent volume claim that will be created and used by the pod. If specified, the VolumeSource.PersistentVolumeClaim’s claimName must be set to ‘GENERATED’


    Generated with gen-crd-api-reference-docs on git commit ed28fad.