Bug 1916938

Summary: Using 4.6 install-config.yaml file with lbFloatingIP results in validation error "Forbidden: cannot specify lbFloatingIP and apiFloatingIP together"
Product: OpenShift Container Platform Reporter: Robert Heinzmann <rheinzma>
Component: InstallerAssignee: Mike Fedosin <mfedosin>
Installer sub component: OpenShift on OpenStack QA Contact: weiwei jiang <wjiang>
Status: CLOSED ERRATA Docs Contact:
Severity: low    
Priority: low CC: adduarte, pprinett, trees
Version: 4.7Keywords: UpcomingSprint
Target Milestone: ---   
Target Release: 4.7.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-02-24 15:53:53 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Robert Heinzmann 2021-01-15 21:50:55 UTC
When using an existing 4.6 customized install-config.yaml file as well as when following the documentation [1] and [2] containing "lbFloatingIP", the installer fails after running "openshift-install create install-config --dir=." with:

~~~
FATAL failed to fetch Metadata: failed to load asset "Install Config": failed to upconvert install config: platform.openstack.lbFloatingIP: Forbidden: cannot specify lbFloatingIP and apiFloatingIP together 
~~~

[1] https://docs.openshift.com/container-platform/4.7/installing/installing_openstack/installing-openstack-installer-custom.html
[2] https://docs.openshift.com/container-platform/4.7/installing/installing_openstack/installing-openstack-installer-custom.html#installation-osp-config-yaml_installing-openstack-installer-custom


Version:

[stack@osp16amd ocp-test1]$ ./openshift-install version
./openshift-install 4.7.0-fc.2
built from commit 69f0bbc18e8c6b1a6e278c54efa2def9b210033a
release image 192.168.100.98:443/ocp4/openshift4@sha256:2f00e3016ca5678e51e9d79d4d3ac5a2926e0c09a8e75df19ea983b9cd6c5d05

Platform:

OpenShift 16.1.3
IPI

What happened?

Using an existing install-config.yaml containing  "lbFloatingIP", the installer fails.

What did you expect to happen?

When running "openshift-install create install-config --dir=.", the installer should migrate the lbFloatingIP to apiFloatingIP (actually removing lbFloatingIP from the yaml) or use both equally.

How to reproduce it (as minimally and precisely as possible)?

- Create install-config.yaml with lbFloatingIP

~~~
platform:
  openstack:
    cloud: ocp-test1
    computeFlavor: openshift.master
    externalNetwork: infra
    lbFloatingIP: 192.168.100.15
    octaviaSupport: "1"
    trunkSupport: "1"
    region: ""
    externalDNS:
    - "192.168.100.1"
~~~

- Run "openshift-install create install-config --dir=."
- Run the installer with "openshift-install create cluster --dir=."

Comment 8 Pierre Prinetti 2021-01-20 16:32:24 UTC
The team accepts this bug as valid; we're setting LOW severity because there is an easy workaround; please advise and revert if we're wrong in the estimation.

Comment 11 weiwei jiang 2021-01-25 06:16:22 UTC
Checked with 4.7.0-0.nightly-2021-01-22-134922, and it got fixed.

$ ./openshift-install-4.7 version
./openshift-install-4.7 4.7.0-0.nightly-2021-01-22-134922
built from commit d19070a771c52c9e9b3a734d3b444cfda4a575b4
release image registry.ci.openshift.org/ocp/release@sha256:cdc9ee89f08a084f51cb9e86a888b5d25a5a47ff74faf08e4067e8a3b7ceb17a


# with same FIPs
$ cat bz1916938/install-config.yaml | grep -i "^platform" -A 5
platform:
  openstack:
    cloud: upshift
    externalNetwork: provider_net_cci_8
    apiFloatingIP: 10.0.100.67
    lbFloatingIP: 10.0.100.67
$ ./openshift-install-4.7 create manifests --dir bz1916938                  
INFO Credentials loaded from file "/home/wjiang/osp_remover/clouds.yaml" 
INFO Consuming Install Config from target directory 
INFO Manifests created in: bz1916938/manifests and bz1916938/openshift 


# with diff FIPs:
$ cat bz1916938/install-config.yaml | grep -i "^platform" -A 5
platform:
  openstack:
    cloud: upshift
    externalNetwork: provider_net_cci_8
    apiFloatingIP: 10.0.100.67
    lbFloatingIP: 10.0.99.15
$ ./openshift-install-4.7 create manifests --dir bz1916938 --log-level debug
DEBUG OpenShift Installer 4.7.0-0.nightly-2021-01-22-134922 
DEBUG Built from commit d19070a771c52c9e9b3a734d3b444cfda4a575b4 
DEBUG Fetching Master Machines...                  
DEBUG Loading Master Machines...                   
DEBUG   Loading Cluster ID...                      
DEBUG     Loading Install Config...                
DEBUG       Loading SSH Key...                     
DEBUG       Loading Base Domain...                 
DEBUG         Loading Platform...                  
DEBUG       Loading Cluster Name...                
DEBUG         Loading Base Domain...               
DEBUG         Loading Platform...                  
DEBUG       Loading Networking...                  
DEBUG         Loading Platform...                  
DEBUG       Loading Pull Secret...                 
DEBUG       Loading Platform...                    
FATAL failed to fetch Master Machines: failed to load asset "Install Config": failed to upconvert install config: platform.openstack.lbFloatingIP: Forbidden: cannot specify lbFloatingIP and apiFloatingIP together 


# with only lbFloatingIP:
$ cat bz1916938/install-config.yaml | grep -i "^platform" -A 5
platform:
  openstack:
    cloud: upshift
    externalNetwork: provider_net_cci_8
    # apiFloatingIP: 10.0.100.67
    lbFloatingIP: 10.0.100.67
$ ./openshift-install-4.7 create manifests --dir bz1916938    
INFO Credentials loaded from file "/home/wjiang/osp_remover/clouds.yaml" 
INFO Consuming Install Config from target directory 
INFO Manifests created in: bz1916938/manifests and bz1916938/openshift

Comment 14 errata-xmlrpc 2021-02-24 15:53:53 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.7.0 security, bug fix, and enhancement 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-2020:5633