Fully Populated Load Balancer creation with OVN provider leaves pools as PENDING_CREATE

Bug #1958964 reported by Luis Tomas Bolivar
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Medium
Fernando Royo

Bug Description

Creating a Fully Populated Load Balancer with OVN as provider successfully creates the LB but the pool stays in PENDING_CREATE state forever.

How reproducible:
Send the fully populated request to the API in JSON format following https://docs.openstack.org/api-ref/load-balancer/v2/index.html?expanded=create-pool-detail,create-a-load-balancer-detail#creating-a-fully-populated-load-balancer

Steps to Reproduce:
1.
#!/bin/sh

set -e

subnet_id=$(openstack subnet show private-subnet -c id -f value)

TOKEN=$(openstack token issue -f value -c id)
OCTAVIA_BASE_URL=$(openstack endpoint list --service octavia --interface public -c URL -f value)

cat <<EOF > tree.json
{
    "loadbalancer": {
        "name": "lb1",
        "vip_subnet_id": "$subnet_id",
        "provider": "ovn",
        "listeners": [
            {
                "name": "listener1",
                "protocol": "TCP",
                "protocol_port": 80,
                "default_pool": {
                    "name": "pool1",
                    "protocol": "TCP",
                    "lb_algorithm": "SOURCE_IP_PORT",
                    "members": [
                        {
                            "address": "192.168.122.18",
                            "protocol_port": 8080
                        }, {
                            "address": "192.168.122.19",
                            "protocol_port": 8080
                        }
                    ]
                }
        }
        ]
    }
}
EOF

curl -X POST \
    -H "Content-Type: application/json" \
    -H "X-Auth-Token: $TOKEN" \
    -d @tree.json \
    ${OCTAVIA_BASE_URL}/v2.0/lbaas/loadbalancers

2. openstack loadbalancer pool list

LB created but listeners, pool and members stays in PENDING_CREATE status

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ovn-octavia-provider (master)
Changed in neutron:
status: New → In Progress
Changed in neutron:
assignee: nobody → Fernando Royo (froyoredhat)
Changed in neutron:
importance: Undecided → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ovn-octavia-provider (master)

Reviewed: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/826257
Committed: https://opendev.org/openstack/ovn-octavia-provider/commit/6cc77f8a22084d610bdc071c8aab36615f0a6a0b
Submitter: "Zuul (22348)"
Branch: master

commit 6cc77f8a22084d610bdc071c8aab36615f0a6a0b
Author: Fernando Royo <email address hidden>
Date: Tue Jan 25 09:04:19 2022 +0000

    Add support for fullypopulated load balancers

    Octavia API allows to create fully populated load balancers with
    a single call. OVN-octavia-provider was not implementing this option
    and only the loadbalancer was created, living the listener(s),
    pool(s), and member(s) created by the Octavia API as PENDING_CREATE.
    This also generated leftovers when trying to delete the loadbalancer
    with the --cascade option.

    Closes-Bug: #1958964
    Change-Id: I07c792c5785f978e7dde238aa3971b87d220a8eb

Changed in neutron:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ovn-octavia-provider (stable/xena)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ovn-octavia-provider (stable/wallaby)

Fix proposed to branch: stable/wallaby
Review: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827691

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ovn-octavia-provider (stable/victoria)

Fix proposed to branch: stable/victoria
Review: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827692

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on ovn-octavia-provider (stable/wallaby)

Change abandoned by "Fernando Royo <email address hidden>" on branch: stable/wallaby
Review: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827691
Reason: error on change-Id (need to be last line)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ovn-octavia-provider (stable/wallaby)

Fix proposed to branch: stable/wallaby
Review: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827694

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to ovn-octavia-provider (stable/ussuri)

Fix proposed to branch: stable/ussuri
Review: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827706

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Fix proposed to branch: stable/ussuri
Review: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/828581

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on ovn-octavia-provider (stable/ussuri)

Change abandoned by "Fernando Royo <email address hidden>" on branch: stable/ussuri
Review: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827706
Reason: set proper change-id after a manual cherry pick

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ovn-octavia-provider (stable/ussuri)

Reviewed: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/828581
Committed: https://opendev.org/openstack/ovn-octavia-provider/commit/893c595608506b9174fc272b8f27b0044c58129e
Submitter: "Zuul (22348)"
Branch: stable/ussuri

commit 893c595608506b9174fc272b8f27b0044c58129e
Author: Fernando Royo <email address hidden>
Date: Thu Feb 3 17:12:52 2022 +0100

    Add support for fullypopulated load balancers

    Octavia API allows to create fully populated load balancers with
    a single call. OVN-octavia-provider was not implementing this option
    and only the loadbalancer was created, living the listener(s),
    pool(s), and member(s) created by the Octavia API as PENDING_CREATE.
    This also generated leftovers when trying to delete the loadbalancer
    with the --cascade option.

    Closes-Bug: #1958964
    (manually cherry picked from commit 6cc77f8a22084d610bdc071c8aab36615f0a6a0b)

    Upstream-Wallaby: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827694
    Upstream-Xena: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827689
    Upstream-Victoria: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827692
    Change-Id: I07c792c5785f978e7dde238aa3971b87d220a8eb

tags: added: in-stable-ussuri
tags: added: in-stable-victoria
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ovn-octavia-provider (stable/victoria)

Reviewed: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827692
Committed: https://opendev.org/openstack/ovn-octavia-provider/commit/eb4d664155b6018c2d65ffe69aa74474d7e345a7
Submitter: "Zuul (22348)"
Branch: stable/victoria

commit eb4d664155b6018c2d65ffe69aa74474d7e345a7
Author: Fernando Royo <email address hidden>
Date: Tue Jan 25 09:04:19 2022 +0000

    Add support for fullypopulated load balancers

    Octavia API allows to create fully populated load balancers with
    a single call. OVN-octavia-provider was not implementing this option
    and only the loadbalancer was created, living the listener(s),
    pool(s), and member(s) created by the Octavia API as PENDING_CREATE.
    This also generated leftovers when trying to delete the loadbalancer
    with the --cascade option.

    Closes-Bug: #1958964
    (cherry picked from commit 6cc77f8a22084d610bdc071c8aab36615f0a6a0b)

    Upstream-Wallaby: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827694
    Upstream-Xena: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827689

    Change-Id: I07c792c5785f978e7dde238aa3971b87d220a8eb

tags: added: in-stable-wallaby
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ovn-octavia-provider (stable/wallaby)

Reviewed: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827694
Committed: https://opendev.org/openstack/ovn-octavia-provider/commit/60d7b42f5b0b7f72265df9869e97e229eda1524f
Submitter: "Zuul (22348)"
Branch: stable/wallaby

commit 60d7b42f5b0b7f72265df9869e97e229eda1524f
Author: Fernando Royo <email address hidden>
Date: Tue Jan 25 09:04:19 2022 +0000

    Add support for fullypopulated load balancers

    Octavia API allows to create fully populated load balancers with
    a single call. OVN-octavia-provider was not implementing this option
    and only the loadbalancer was created, living the listener(s),
    pool(s), and member(s) created by the Octavia API as PENDING_CREATE.
    This also generated leftovers when trying to delete the loadbalancer
    with the --cascade option.

    Closes-Bug: #1958964
    (cherry picked from commit 6cc77f8a22084d610bdc071c8aab36615f0a6a0b)

    Upstream-Xena: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827689

    Change-Id: I07c792c5785f978e7dde238aa3971b87d220a8eb

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to ovn-octavia-provider (stable/xena)

Reviewed: https://review.opendev.org/c/openstack/ovn-octavia-provider/+/827689
Committed: https://opendev.org/openstack/ovn-octavia-provider/commit/23edaa9891a887a84d0bdd65447117376fac2021
Submitter: "Zuul (22348)"
Branch: stable/xena

commit 23edaa9891a887a84d0bdd65447117376fac2021
Author: Fernando Royo <email address hidden>
Date: Tue Jan 25 09:04:19 2022 +0000

    Add support for fullypopulated load balancers

    Octavia API allows to create fully populated load balancers with
    a single call. OVN-octavia-provider was not implementing this option
    and only the loadbalancer was created, living the listener(s),
    pool(s), and member(s) created by the Octavia API as PENDING_CREATE.
    This also generated leftovers when trying to delete the loadbalancer
    with the --cascade option.

    Closes-Bug: #1958964
    Change-Id: I07c792c5785f978e7dde238aa3971b87d220a8eb
    (cherry picked from commit 6cc77f8a22084d610bdc071c8aab36615f0a6a0b)

tags: added: in-stable-xena
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/ovn-octavia-provider 2.0.0.0rc1

This issue was fixed in the openstack/ovn-octavia-provider 2.0.0.0rc1 release candidate.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/ovn-octavia-provider 1.0.1

This issue was fixed in the openstack/ovn-octavia-provider 1.0.1 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/networking-ovn train-eol

This issue was fixed in the openstack/networking-ovn train-eol release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/ovn-octavia-provider 1.2.0

This issue was fixed in the openstack/ovn-octavia-provider 1.2.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/ovn-octavia-provider ussuri-eol

This issue was fixed in the openstack/ovn-octavia-provider ussuri-eol release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/ovn-octavia-provider victoria-eom

This issue was fixed in the openstack/ovn-octavia-provider victoria-eom release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.