Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1565076

Summary: Openshift-on-OpenStack playbook (prerequisites) fails for OSP with Octavia
Product: OpenShift Container Platform Reporter: Jon Uriarte <juriarte>
Component: InstallerAssignee: Antoni Segura Puimedon <asegurap>
Status: CLOSED ERRATA QA Contact: Jon Uriarte <juriarte>
Severity: high Docs Contact:
Priority: high    
Version: 3.10.0CC: aos-bugs, jokerman, mmccomas, racedoro, tsedovic, tzumainn
Target Milestone: ---   
Target Release: 3.10.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
The OpenShift Ansible OpenStack playbook can target clouds where the LBaaSv2 API is provided by either Neutron-LBaaS or Octavia. The way that we were checking for LBaaSv2 availability and template generation was Neutron-LBaaS specific but worked with Octavia if you had Neutron-LBaaS as a proxy to it. This proxy, however, is not supported and its maintenance is not up to the same standards as Octavia and Neutron-LBaaS are. This fix makes it possible to use Octavia directly.
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-07-30 19:12:20 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 Jon Uriarte 2018-04-09 10:35:05 UTC
Description of problem:

The OpenStack provisioning playbook fails, at prerequisites stage, when the underlying OSP is configured with Octavia.

Version-Release number of the following components:

[cloud-user@ansible-host ~]$ rpm -q openshift-ansible
openshift-ansible-3.10.0-0.16.0.git.0.8925606.el7.noarch

(overcloud) [cloud-user@ansible-host ~]$ rpm -q ansible
ansible-2.4.3.0-1.el7ae.noarch

[cloud-user@ansible-host ~]$ ansible --version
ansible 2.4.3.0
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/home/cloud-user/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.5 (default, Feb  9 2018, 09:51:13) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]

OSP version: 13 puddle 2018-04-03.3

Link to upstream issue: https://github.com/openshift/openshift-ansible/issues/7806

How reproducible: always

Steps to Reproduce:
1. Install OSP 13 with Octavia
2. Deploy an ansible-host
3. Run the Openshift-on-OpenStack playbook with Kuryr support
   $ ansible-playbook --user openshift -i /usr/share/ansible/openshift-ansible/playbooks/openstack/inventory.py -i inventory /usr/share/ansible/openshift-ansible/playbooks/openstack/openshift-cluster/provision_install.yml

Running only the prerequisites playbook is also reproduced:
   $ ansible-playbook --user openshift -i /usr/share/ansible/openshift-ansible/playbooks/openstack/inventory.py -i inventory /usr/share/ansible/openshift-ansible/playbooks/openstack/openshift-cluster/prerequisites.yml

Actual results:

TASK [openshift_openstack : fail] *********************************************************************************************************************************************************************************
fatal: [localhost]: FAILED! => {"changed": false, "msg": "Kuryr enabled but lacking required lbaasv2 support in Neutron"}


Expected results: No error

Additional info:
[cloud-user@ansible-host ~]$ openstack network service provider list
+---------------+-------------+---------+
| Service Type  | Name        | Default |
+---------------+-------------+---------+
| L3_ROUTER_NAT | single_node | False   |
| L3_ROUTER_NAT | ha          | False   |
| L3_ROUTER_NAT | dvrha       | False   |
| L3_ROUTER_NAT | dvr         | False   |
+---------------+-------------+---------+

Comment 2 Tomas Sedovic 2018-04-09 10:57:27 UTC
This is blocking all OpenStack Kuryr deployments and the now-merged LBaaS support as well.

Looks like we can't rely on Octavia/TripleO to fix this for us:

https://bugzilla.redhat.com/show_bug.cgi?id=1564188

So we'll have to update the OpenStack playbooks to be able to talk to Octavia directly. Toni said he'll take a look so I've assigned this to him.

Comment 3 Antoni Segura Puimedon 2018-04-24 12:39:31 UTC
https://github.com/openshift/openshift-ansible/pull/7981

Comment 5 Jon Uriarte 2018-05-31 10:21:51 UTC
Verified in openshift-ansible-3.10.0-0.53.0.git.0.53fe016.el7.noarch over OSP 13 2018-05-23.1 puddle.

Verification steps:
1. Install OSP 13 with Octavia
2. Deploy an ansible-host
3. Run the Openshift-on-OpenStack prerequisites playbook with Kuryr support
   $ ansible-playbook --user openshift -i /usr/share/ansible/openshift-ansible/playbooks/openstack/inventory.py -i inventory /usr/share/ansible/openshift-ansible/playbooks/openstack/openshift-cluster/prerequisites.yml

The playbook finishes successfully.

Comment 7 errata-xmlrpc 2018-07-30 19:12:20 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, 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/RHBA-2018:1816