k8s.io/perf-tests/clusterloader2@v0.0.0-20240304094227-64bdb12da87e/testing/node-throughput/config.yaml (about)

     1  # ASSUMPTIONS:
     2  # - This test is designed for 1-node cluster.
     3  
     4  #Constants
     5  {{$POD_COUNT := DefaultParam .POD_COUNT 100}}
     6  {{$POD_THROUGHPUT := DefaultParam .POD_THROUGHPUT 5}}
     7  {{$CONTAINER_IMAGE := DefaultParam .CONTAINER_IMAGE "registry.k8s.io/pause:3.9"}}
     8  {{$POD_STARTUP_LATENCY_THRESHOLD := DefaultParam .POD_STARTUP_LATENCY_THRESHOLD "5s"}}
     9  {{$OPERATION_TIMEOUT := DefaultParam .OPERATION_TIMEOUT "15m"}}
    10  
    11  name: node-throughput
    12  namespace:
    13    number: {{$POD_COUNT}}
    14  tuningSets:
    15  - name: UniformQPS
    16    qpsLoad:
    17      qps: {{$POD_THROUGHPUT}}
    18  steps:
    19  - name: Starting measurements
    20    measurements:
    21    - Identifier: APIResponsivenessPrometheusSimple
    22      Method: APIResponsivenessPrometheus
    23      Params:
    24        action: start
    25    - Identifier: PodStartupLatency
    26      Method: PodStartupLatency
    27      Params:
    28        action: start
    29        labelSelector: group = latency
    30        threshold: {{$POD_STARTUP_LATENCY_THRESHOLD}}
    31  - name: Starting pods measurements
    32    measurements:
    33    - Identifier: WaitForRunningLatencyRCs
    34      Method: WaitForControlledPodsRunning
    35      Params:
    36        action: start
    37        apiVersion: v1
    38        kind: ReplicationController
    39        labelSelector: group = latency
    40        operationTimeout: {{$OPERATION_TIMEOUT}}
    41  - name: Creating pods
    42    phases:
    43    - namespaceRange:
    44        min: 1
    45        max: {{$POD_COUNT}}
    46      replicasPerNamespace: 1
    47      tuningSet: UniformQPS
    48      objectBundle:
    49      - basename: latency-pod-rc
    50        objectTemplatePath: rc.yaml
    51        templateFillMap:
    52          Replicas: 1
    53          Group: latency
    54          Image: {{$CONTAINER_IMAGE}}
    55  - name: Waiting for pods to be running
    56    measurements:
    57    - Identifier: WaitForRunningLatencyRCs
    58      Method: WaitForControlledPodsRunning
    59      Params:
    60        action: gather
    61  - name: Deleting pods
    62    phases:
    63    - namespaceRange:
    64        min: 1
    65        max: {{$POD_COUNT}}
    66      replicasPerNamespace: 0
    67      tuningSet: UniformQPS
    68      objectBundle:
    69      - basename: latency-pod-rc
    70        objectTemplatePath: rc.yaml
    71  - name: Waiting for pods to be deleted
    72    measurements:
    73    - Identifier: WaitForRunningLatencyRCs
    74      Method: WaitForControlledPodsRunning
    75      Params:
    76        action: gather
    77  # Collect measurements
    78  - name: Collecting pods measurements
    79    measurements:
    80    - Identifier: PodStartupLatency
    81      Method: PodStartupLatency
    82      Params:
    83        action: gather
    84  - name: Collecting measurements
    85    measurements:
    86    - Identifier: APIResponsivenessPrometheusSimple
    87      Method: APIResponsivenessPrometheus
    88      Params:
    89        action: gather
    90        enableViolations: true
    91        useSimpleLatencyQuery: true
    92        summaryName: APIResponsivenessPrometheus_simple