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

[osp][octavia lb] LBs type svcs not updated until all the LBs are created

    XMLWordPrintable

Details

    • +
    • Moderate
    • ShiftStack Sprint 230
    • 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

      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 2 min to be created, the last LB
      will be created after 20 min.
      
      Even when any LB in OSP is in ACTIVE status, the svc is not updated with the FIP until
      all the LBS are created.
      

      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.

      Attachments

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: