Uploaded image for project: 'OpenShift Pipelines'
  1. OpenShift Pipelines
  2. SRVKP-4023

[release-testing] Performance tests

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Done
    • Icon: Major Major
    • Pipelines 1.14.0
    • Pipelines 1.14.0
    • QA
    • Pipelines Sprint 258

      Steps:

      #!/bin/bash
      #sudo su -
      
      #Note:
          # For RH team, Install a fresh cluster (3 master nodes + 3 worker nodes on AWS, flavor m6i.xlarge (4 CPU, 16 GB RAM, ebs-only)
          # For P/Z team, run these steps on regular OCP cluster (3 master nodes + 3 worker nodes)
          # Pipelines operator should be installed for specificed release
          # RH jira issue https://issues.redhat.com/browse/SRVKP-3511
          # Power jira issue https://jsw.ibm.com/browse/OCPADO-984
          # Z jira issue https://jsw.ibm.com/browse/OCPADO-982
      
      echo "############### Install dependencies ###############"
      yum install -y parallel
      
      echo "############### Display cluster info ###############"
      oc cluster-info
      
      echo "############### Display OCP version ###############"
      oc version
       
      echo "############### Check nodes ###############"
      oc get nodes
      
      echo "Steps 1: update these below three lines in .spec.pipeline.performance in TektonConfig"
      echo "buckets: 10       
            replicas: 10     
            threads-per-controller:"
      
      oc edit tektonconfig config
      
      echo "Step 2: Enable High Availability With Operator on OpenShift"
      
      echo "enable HA as described in https://docs.openshift-pipelines.org/docs/latest/operator/high-availability.html"
      
      echo "First, specify the number of buckets across which you want to distribute workqueue. The maximum supported value for bucket is 10. You need to update the config CR with the required number of buckets."
      
      echo "Update .spec.pipeline.performance in TektonConfig"
      oc edit tektonconfig config
      
      echo "Add these below three fields in tektonconfig" 
      echo "performance:
              disable-ha: false
              buckets: 10
              replicas: 10
              threads-per-controller: 2 "
      echo "Next step is to scale the tekton-pipelines-controller for having more replicas. (This is also recommended to not have more than 10 replicas"
      
      oc -n openshift-pipelines scale deployment/tekton-pipelines-controller --replicas=3
      
      echo "Now delete the existing leases so that old replica removes hold and new leases gets created which get acquired by different replicas."
      
      oc delete -n openshift-pipelines $(oc get leases -n openshift-pipelines -o name | grep tekton-pipelines-controller)
      
      echo "Creating new namespace for benchmarking"
      oc create ns benchmark
      
      oc config set-context --current --namespace=benchmark
      
      echo "Note: This needed to be run only first  time"parallel --citation 
      
      echo "Step 3: Download perf testing script:"git clone https://github.com/khrm/scalingPipelines.gitcd scalingPipelines
      
      echo "Applying resources to run benchmarking runs/jobs"oc apply -f pipeline.yaml -n benchmark
      echo "Running benchmark:"
      
      time ./benchmark-tekton.sh --total 100 --concurrent 150   

       

            ppitonak Pavol Pitoňák
            varadhya Veeresh Aradhya
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: