Bug 2105996 - Broken assign error display for cloudprivateipconfig
Summary: Broken assign error display for cloudprivateipconfig
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Networking
Version: 4.12
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: ---
: 4.12.0
Assignee: Andreas Karis
QA Contact: jechen
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-07-11 13:47 UTC by Andreas Karis
Modified: 2023-01-17 19:52 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-01-17 19:51:57 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github openshift cloud-network-config-controller pull 48 0 None open Bug 2105996: Fix assign error display for cloudprivateipconfig 2022-07-11 13:50:24 UTC
Red Hat Product Errata RHSA-2022:7399 0 None None None 2023-01-17 19:52:28 UTC

Description Andreas Karis 2022-07-11 13:47:13 UTC
Description of problem:
Broken assign error display for cloudprivateipconfig


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


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 3 Andreas Karis 2022-08-02 12:43:43 UTC
Reproducer steps - assign an invalid EgressIP, such as one that requests an already allocated IP address.

Before one would see: "'Error processing cloud assignment request, err: <nil>''
~~~
[akaris@linux cloud-network-config-controller (openstack-cloud-provider)]$ oc get cloudprivateipconfig 10.0.0.1 -o yaml
apiVersion: cloud.network.openshift.io/v1
kind: CloudPrivateIPConfig
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"cloud.network.openshift.io/v1","kind":"CloudPrivateIPConfig","metadata":{"annotations":{},"name":"10.0.0.1"},"spec":{"node":"km2fmrb-b5564-tx8gk-worker-0-8fgxv"}}
  creationTimestamp: "2022-07-05T14:35:36Z"
  finalizers:
  - cloudprivateipconfig.cloud.network.openshift.io/finalizer
  generation: 1
  name: 10.0.0.1
  resourceVersion: "83555"
  uid: 546a4b2d-91f7-48f7-aed9-ca5ce93deb01
spec:
  node: km2fmrb-b5564-tx8gk-worker-0-8fgxv
status:
  conditions:
  - lastTransitionTime: "2022-07-05T14:36:07Z"
    message: 'Error processing cloud assignment request, err: <nil>'
    observedGeneration: 1
    reason: CloudResponseError
    status: "False"
    type: Assigned
  node: km2fmrb-b5564-tx8gk-worker-0-8fgxv
~~~

Now, one will see:
~~~
[akaris@linux cloud-network-config-controller (openstack-cloud-provider)]$ oc get cloudprivateipconfig 10.0.0.1 -o yaml
apiVersion: cloud.network.openshift.io/v1
kind: CloudPrivateIPConfig
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"cloud.network.openshift.io/v1","kind":"CloudPrivateIPConfig","metadata":{"annotations":{},"name":"10.0.0.1"},"spec":{"node":"km2fmrb-b5564-tx8gk-worker-0-8fgxv"}}
  creationTimestamp: "2022-07-05T14:35:36Z"
  finalizers:
  - cloudprivateipconfig.cloud.network.openshift.io/finalizer
  generation: 1
  name: 10.0.0.1
  resourceVersion: "84478"
  uid: 546a4b2d-91f7-48f7-aed9-ca5ce93deb01
spec:
  node: km2fmrb-b5564-tx8gk-worker-0-8fgxv
status:
  conditions:
  - lastTransitionTime: "2022-07-05T14:38:40Z"
    message: |-
      Error processing cloud assignment request, err: Expected HTTP response code [201 202] when accessing [POST https://network.rdo.mtl2.vexxhost.net/v2.0/ports], but got 409 instead
      {"NeutronError": {"type": "IpAddressAlreadyAllocated", "message": "IP address 10.0.0.1 already allocated in subnet aa2c1ae8-649e-4461-b122-4b9911c133e1", "detail": ""}}
    observedGeneration: 1
    reason: CloudResponseError
    status: "False"
    type: Assigned
  node: km2fmrb-b5564-tx8gk-worker-0-8fgxv
~~~

Comment 5 jechen 2022-08-17 14:31:16 UTC
verified with 4.12.0-0.nightly-2022-08-15-150248

$ oc get clusterversion
NAME      VERSION                              AVAILABLE   PROGRESSING   SINCE   STATUS
version   4.12.0-0.nightly-2022-08-15-150248   True        False         47m     Cluster version is 4.12.0-0.nightly-2022-08-15-150248

$ oc get node
NAME                                        STATUS   ROLES                  AGE   VERSION
ip-10-0-52-8.us-east-2.compute.internal     Ready    control-plane,master   85m   v1.24.0+da80cd0
ip-10-0-56-147.us-east-2.compute.internal   Ready    worker                 66m   v1.24.0+da80cd0
ip-10-0-58-214.us-east-2.compute.internal   Ready    control-plane,master   84m   v1.24.0+da80cd0
ip-10-0-62-244.us-east-2.compute.internal   Ready    worker                 64m   v1.24.0+da80cd0
ip-10-0-72-28.us-east-2.compute.internal    Ready    worker                 64m   v1.24.0+da80cd0
ip-10-0-75-126.us-east-2.compute.internal   Ready    control-plane,master   85m   v1.24.0+da80cd0


$ oc label node ip-10-0-56-147.us-east-2.compute.internal "k8s.ovn.org/egress-assignable"=""
node/ip-10-0-56-147.us-east-2.compute.internal labeled


# create an egressip with gateway ip 10.0.48.1

$ oc get egressips.k8s.ovn.org 
NAME        EGRESSIPS   ASSIGNED NODE   ASSIGNED EGRESSIPS
egressip2   10.0.48.1    

$ oc describe cloudprivateipconfig 10.0.48.1 
Name:         10.0.48.1
Namespace:    
Labels:       <none>
Annotations:  k8s.ovn.org/egressip-owner-ref: egressip2
API Version:  cloud.network.openshift.io/v1
Kind:         CloudPrivateIPConfig
Metadata:
  Creation Timestamp:  2022-08-17T14:26:48Z
  Finalizers:
    cloudprivateipconfig.cloud.network.openshift.io/finalizer
  Generation:  1
  Managed Fields:
    API Version:  cloud.network.openshift.io/v1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:finalizers:
          .:
          v:"cloudprivateipconfig.cloud.network.openshift.io/finalizer":
    Manager:      cloud-network-config-controller
    Operation:    Update
    Time:         2022-08-17T14:26:48Z
    API Version:  cloud.network.openshift.io/v1
    Fields Type:  FieldsV1
    fieldsV1:
      f:status:
        .:
        f:conditions:
        f:node:
    Manager:      cloud-network-config-controller
    Operation:    Update
    Subresource:  status
    Time:         2022-08-17T14:26:48Z
    API Version:  cloud.network.openshift.io/v1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .:
          f:k8s.ovn.org/egressip-owner-ref:
      f:spec:
        .:
        f:node:
    Manager:         ip-10-0-75-126
    Operation:       Update
    Time:            2022-08-17T14:26:48Z
  Resource Version:  53821
  UID:               62a009d9-22fa-48d0-9089-b7328c6fa422
Spec:
  Node:  ip-10-0-56-147.us-east-2.compute.internal
Status:
  Conditions:
    Last Transition Time:  2022-08-17T14:27:34Z
    Message:               Error processing cloud assignment request, err: InvalidParameterValue: Address 10.0.48.1 is in subnet's reserved range.
                           status code: 400, request id: d7772ad2-cb1e-4b81-8868-11b4949de27e
    Observed Generation:   1
    Reason:                CloudResponseError
    Status:                False
    Type:                  Assigned
  Node:                    ip-10-0-56-147.us-east-2.compute.internal
Events:                    <none>


==> getting proper error message after "Error processing cloud assignment request", err: InvalidParameterValue: Address 10.0.48.1 is in subnet's reserved range.

Comment 8 errata-xmlrpc 2023-01-17 19:51:57 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: OpenShift Container Platform 4.12.0 bug fix and security update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2022:7399


Note You need to log in before you can comment on or make changes to this bug.