cloud-bulldozer / benchmark-operator

The Chuck Norris of cloud benchmarks
Apache License 2.0
282 stars 127 forks source link

Test type 'bidirec' not working in uperf #780

Closed vishnuchalla closed 2 years ago

vishnuchalla commented 2 years ago

Describe the bug 'bidirec' test type is not working in the uperf.

Root Cause In this test type the client should open two TCP connections with the server: one is used for the forward test and one for the reverse. But it is trying to use same port and running into error. Attaching the screenshots below.

To Reproduce CR to reproduce

apiVersion: ripsaw.cloudbulldozer.io/v1alpha1
kind: Benchmark
metadata:
  name: uperf-burstable
  namespace: benchmark-operator
spec:
  system_metrics:
    collection: true
    prom_url: https://prometheus-k8s.openshift-monitoring.svc.cluster.local:9091
    es_url: https://search-perfscale-dev-chmf5l4sh66lvxbnadi4bznl3a.us-west-2.es.amazonaws.com:443
    prom_token: ${PROM_TOKEN}
    metrics_profile: node-metrics.yml
  elasticsearch:
    url: https://search-perfscale-dev-chmf5l4sh66lvxbnadi4bznl3a.us-west-2.es.amazonaws.com:443
    index_name: ripsaw-uperf
  metadata:
    collection: true
  cleanup: false
  workload:
    name: uperf
    args:
      hostnetwork: false
      serviceip: false
      pin: false
      multus:
        enabled: false
      samples: 2
      pair: 1
      test_types:
        - bidirec
      protos:
        - tcp
        - udp
      sizes:
        - 1024
        - [1024, 512]
      nthrs:
        - 1
        - 2
      runtime: 2
      debug: true

Screenshots

Fix Suggestion The backward test port must be different from the forward test port. This should ultimately fix this issue.