Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-6069

[osp][octavia lb] LBs for svcs are created sequentially with eCCM

XMLWordPrintable

    • +
    • Moderate
    • ShiftStack Sprint 231
    • 1
    • Rejected
    • False
    • Hide

      None

      Show
      None
    • Hide
      Cause: Due to a wrong check in cloud-provider-openstack, type=LoadBalancer Services, when created in a short period, will only be populated with ExternalIP address once all of the Octavia load balancers get created.
      Consequence: This increases time for load balancers to be handled.
      Fix: Fix is to make sure FIP creation is done after load balancer gets created and not in the next iteration.
      Result: Load balancers are still created sequentially, but they'll be getting External IP populated one-by-one.
      Show
      Cause: Due to a wrong check in cloud-provider-openstack, type=LoadBalancer Services, when created in a short period, will only be populated with ExternalIP address once all of the Octavia load balancers get created. Consequence: This increases time for load balancers to be handled. Fix: Fix is to make sure FIP creation is done after load balancer gets created and not in the next iteration. Result: Load balancers are still created sequentially, but they'll be getting External IP populated one-by-one.
    • Bug Fix

      Description of problem:

      The Load Balancers for LB type svs are created sequentially, meaning that if 10 LB type
      services are created in parallel and each LB takes 1 min to be created, the last LB
      will be created after 10 min.
      
      So when 10 LB type services are created in parallel, if each LB takes 1 minute to be in ACTIVE state:
      
      	Service 1 will be available after 1 min since it was created
      	Service 2 will be available after 2 min since it was created
      	Service 3 will be available after 3 min since it was created
      	Service 4 will be available after 4 min since it was created
      	Service 5 will be available after 5 min since it was created
      	Service 6 will be available after 6 min since it was created
      	Service 7 will be available after 7 min since it was created
      	Service 8 will be available after 8 min since it was created
      	Service 9 will be available after 9 min since it was created
      	Service 10 will be available after 10 min since it was created
      
      This means that the number of tests running in parallel is limited by the service creation timeout.
      
      number of parallel tests < LB creation timeout / LB creation time
      
      If the LB creation timeout is 5 min and LB creation takes 1 min we cannot run more than 4-5 tests in parallel

       

      Note this issue is the same as the one reported in BZ 2009372 but for the external cloud provider, which is added in OCP 4.12

      Version-Release number of selected component (if applicable):

      4.12.0-0.nightly-2022-09-20-095559

      How reproducible:

      Always

      Steps to Reproduce:

      1. Deploy OCP
      2. Create 10 LB type svcs:
       for i in `seq 1 10`;
       do echo $i;
       oc new-project test$i-ns;
       oc create deployment test$i-dep --image=quay.io/kuryr/demo;
       oc scale deployments/test$i-dep --replicas=2;
       oc expose deployment test$i-dep --name test$i-svc --type=LoadBalancer --port 80 --target-port=8080;
       done
      3. Wait until the LBs are created 

      Actual results:

      LBs sequentially created

      Expected results:

      Should be created in parallel? not sure if this is the expected behavior but we should
      consider it or analyze the impact/risks otherwise.

            mdulko Michał Dulko
            juriarte@redhat.com Jon Uriarte
            Jon Uriarte Jon Uriarte
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: