diff --git a/advanced-examples/system-performance/stressng-k8s/docker-compose-dev.yaml b/advanced-examples/system-performance/stressng-k8s/docker-compose-dev.yaml index 1ea7cc4..c5822d9 100644 --- a/advanced-examples/system-performance/stressng-k8s/docker-compose-dev.yaml +++ b/advanced-examples/system-performance/stressng-k8s/docker-compose-dev.yaml @@ -2,7 +2,7 @@ version: '3.7' services: elasticsearch: - image: docker.elastic.co/elasticsearch/elasticsearch:8.17.2 + image: docker.elastic.co/elasticsearch/elasticsearch:9.0.3 container_name: elasticsearch environment: - discovery.type=single-node diff --git a/advanced-examples/system-performance/stressng-k8s/input.yaml b/advanced-examples/system-performance/stressng-k8s/input.yaml index 6f91e13..9183f6b 100644 --- a/advanced-examples/system-performance/stressng-k8s/input.yaml +++ b/advanced-examples/system-performance/stressng-k8s/input.yaml @@ -2,23 +2,16 @@ run_id: example_run_id pcp_pmlogger_interval: 1.0 stressng_params: - timeout: 1m - workdir: /tmp + timeout: 10 stressors: - stressor: cpu - cpu_count: 2 - cpu_method: "all" + workers: 1 - stressor: vm - vm: 5 - vm_bytes: "1g" - - stressor: matrix - matrix: 1 - - stressor: mq - mq: 2 - - stressor: hdd - hdd: 1 - hdd_bytes: 1g - hdd_write_size: 1m + workers: 1 + vm-bytes: 1G + - stressor: mmap + workers: 1 + mmap-bytes: 1G k8s_namespace: default kubeconfig: | diff --git a/advanced-examples/system-performance/stressng-k8s/workflow.yaml b/advanced-examples/system-performance/stressng-k8s/workflow.yaml index 41d723a..3ef6549 100644 --- a/advanced-examples/system-performance/stressng-k8s/workflow.yaml +++ b/advanced-examples/system-performance/stressng-k8s/workflow.yaml @@ -38,277 +38,8 @@ input: type: type_id: ref id: StressNGParams + namespace: $.steps.stressng.starting.inputs.input required: true - StressNGParams: - id: StressNGParams - properties: - metrics_brief: - display: - description: Brief version of the metrics output - name: brief metrics - required: false - type: - type_id: bool - stressors: - display: {} - required: true - type: - items: - discriminator_field_name: stressor - type_id: one_of_string - types: - cpu: - display: - description: Parameters for running the cpu stressor - name: CPU Stressor Parameters - id: CpuStressorParams - type_id: ref - hdd: - display: - description: Parameters for running the hdd stressor - name: HDD Stressor Parameters - id: HDDStressorParams - type_id: ref - matrix: - display: - description: Parameters for running the matrix stressor - name: Matrix Stressor Parameters - id: MatrixStressorParams - type_id: ref - mq: - display: - description: Parameters for running the mq stressor - name: MQ Stressor Parameters - id: MqStressorParams - type_id: ref - vm: - display: - description: Parameters for running the vm stressor - name: VM Stressor Parameters - id: VmStressorParams - type_id: ref - type_id: list - timeout: - display: - description: Time to run the benchmark test - name: Runtime - required: true - type: - type_id: string - verbose: - display: - description: verbose output - name: verbose - required: false - type: - type_id: bool - workdir: - display: - description: Path were stress-ng will be executed (example to target - a specific volume) - name: Working Dir - required: false - type: - type_id: string - CpuStressorParams: - id: CpuStressorParams - properties: - cpu_count: - display: - description: Number of CPU cores to be used (0 means all) - name: CPU count - required: true - type: - type_id: integer - cpu_load: - display: - description: load CPU by percentage - name: CPU load - required: false - type: - type_id: integer - cpu_method: - default: '"all"' - display: - description: fine grained control of which cpu stressors to use (ackermann, - cfloat etc. - name: CPU stressor method - required: false - type: - type_id: string - stressor: - display: - description: Stressor for the benchmark workload - name: Stressor - required: true - type: - type_id: enum_string - values: - cpu: - name: CPU - hdd: - name: HDD - matrix: - name: MATRIX - mq: - name: MQ - vm: - name: VM - HDDStressorParams: - id: HDDStressorParams - properties: - hdd: - display: - description: start N workers continually writing, reading and removing - temporary files - name: HDD workers - required: true - type: - type_id: integer - hdd_bytes: - display: - description: write N bytes for each hdd process, the default is - 1 GB. One can specify the size in units of Bytes, KBytes, MBytes - and GBytes using the suffix b, k, m or g. - name: Bytes per worker - required: true - type: - type_id: string - hdd_write_size: - display: - description: specify size of each write in bytes. Size can be from - 1 byte to 4MBOne can specify the size in units of Bytes, KBytes, - MBytes using the suffix b, k, m - name: Write Size - required: true - type: - type_id: string - stressor: - display: - description: Stressor for the benchmark workload - name: Stressor - required: true - type: - type_id: enum_string - values: - cpu: - name: CPU - hdd: - name: HDD - matrix: - name: MATRIX - mq: - name: MQ - vm: - name: VM - MatrixStressorParams: - id: MatrixStressorParams - properties: - matrix: - display: - description: Number of Matrix stressors to be run (0 means 1 stressor - per CPU - name: Matrix count - required: true - type: - type_id: integer - stressor: - display: - description: Stressor for the benchmark workload - name: Stressor - required: true - type: - type_id: enum_string - values: - cpu: - name: CPU - hdd: - name: HDD - matrix: - name: MATRIX - mq: - name: MQ - vm: - name: VM - MqStressorParams: - id: MqStressorParams - properties: - mq: - display: - description: Number of MQ stressors to be run (0 means 1 stressor - per CPU) - name: MQ count - required: true - type: - type_id: integer - stressor: - display: - description: Stressor for the benchmark workload - name: Stressor - required: true - type: - type_id: enum_string - values: - cpu: - name: CPU - hdd: - name: HDD - matrix: - name: MATRIX - mq: - name: MQ - vm: - name: VM - VmStressorParams: - id: VmStressorParams - properties: - mmap: - display: - description: Number of stressors per CPU - name: mmap - required: false - type: - type_id: string - mmap_bytes: - display: - name: Allocation of memory per stressor - required: false - type: - type_id: string - stressor: - display: - description: Stressor for the benchmark workload - name: Stressor - required: true - type: - type_id: enum_string - values: - cpu: - name: CPU - hdd: - name: HDD - matrix: - name: MATRIX - mq: - name: MQ - vm: - name: VM - vm: - display: - description: Number of VM stressors to be run (0 means 1 stressor - per CPU - name: VM count - required: true - type: - type_id: integer - vm_bytes: - display: - description: Amount of memory a single VM stressor will use - name: VM memory - required: true - type: - type_id: string - steps: uuidgen: @@ -345,10 +76,9 @@ steps: stressng: plugin: deployment_type: image - src: quay.io/arcalot/arcaflow-plugin-stressng:0.5.0 + src: quay.io/arcalot/arcaflow-plugin-stressng:0.8.1 step: workload - input: - StressNGParams: !expr $.input.stressng_params + input: !expr $.input.stressng_params wait_for: !expr $.steps.pcp.starting.started deploy: deployer_name: kubernetes diff --git a/advanced-examples/system-performance/sysbench/docker-compose-dev.yaml b/advanced-examples/system-performance/sysbench/docker-compose-dev.yaml index 1ea7cc4..c5822d9 100644 --- a/advanced-examples/system-performance/sysbench/docker-compose-dev.yaml +++ b/advanced-examples/system-performance/sysbench/docker-compose-dev.yaml @@ -2,7 +2,7 @@ version: '3.7' services: elasticsearch: - image: docker.elastic.co/elasticsearch/elasticsearch:8.17.2 + image: docker.elastic.co/elasticsearch/elasticsearch:9.0.3 container_name: elasticsearch environment: - discovery.type=single-node