Bug 1290826

Summary: when not using network isolation, after an update from GA to latest release the apis try to reach the old public_virtual_ip
Product: Red Hat OpenStack Reporter: mathieu bultel <mbultel>
Component: openstack-tripleo-heat-templatesAssignee: Giulio Fidente <gfidente>
Status: CLOSED ERRATA QA Contact: Marius Cornea <mcornea>
Severity: high Docs Contact:
Priority: unspecified    
Version: 7.0 (Kilo)CC: dmacpher, gfidente, hbrock, jcoufal, kbasil, mburns, rhel-osp-director-maint, whayutin
Target Milestone: asyncKeywords: Automation
Target Release: 7.0 (Kilo)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openstack-tripleo-heat-templates-0.8.6-95.el7ost python-rdomanager-oscplugin-0.0.10-23.el7ost Doc Type: Bug Fix
Doc Text:
In Red Hat OpenStack Platform 7.0, Overclouds using a flat network had an additional Public IP created. This is no longer required but needs preservation for backwards compatibility. If upgrading from 7.0 and using a flat network topology, include the following environment file: /usr/share/openstack-tripleo-heat-templates/environments/updates/update-from-publicvip-on-ctlplane.yaml This environment file preserves the additional IP address from 7.0 and behaving as 'public_virtual_ip'.
Story Points: ---
Clone Of:
: 1291844 1291845 1309820 (view as bug list) Environment:
Last Closed: 2016-02-18 16:47:45 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:
Bug Depends On: 1291845, 1309815    
Bug Blocks: 1291844, 1309820    

Description mathieu bultel 2015-12-11 14:51:07 UTC
Updates from 7.0 and 7.1 GA to Dec 10 puddle:
On a 3 nodes deployment without network isolation.

Without network, after the updates the api tries to reach the old public VIP which has been removed.

Below the control_virtual_ip is 192.0.2.6, the apis try to reach 192.0.2.9 which was the previous public_virtual_ip.


[stack@instack ~]$ neutron port-list
+--------------------------------------+--------------------+-------------------+-----------------------------------------------------------------------------------+
| id                                   | name               | mac_address       | fixed_ips                                                                         |
+--------------------------------------+--------------------+-------------------+-----------------------------------------------------------------------------------+
| 0336cfad-8b8e-4ef4-a4ad-24c6af167978 |                    | 00:c9:a2:79:5c:5a | {"subnet_id": "79e32ec4-41c7-489a-a59b-6e028f6fad6e", "ip_address": "192.0.2.10"} |
| 0ac33206-5e07-431c-ba44-09da1d4fde75 |                    | 00:19:dc:07:4b:77 | {"subnet_id": "79e32ec4-41c7-489a-a59b-6e028f6fad6e", "ip_address": "192.0.2.8"}  |
| 0fc074c6-c334-4b39-81c5-97a707cf369d |                    | fa:16:3e:79:78:8a | {"subnet_id": "79e32ec4-41c7-489a-a59b-6e028f6fad6e", "ip_address": "192.0.2.5"}  |
| 1dfbee50-8fe1-4428-879b-d5acd2893b5a | control_virtual_ip | fa:16:3e:fe:17:15 | {"subnet_id": "79e32ec4-41c7-489a-a59b-6e028f6fad6e", "ip_address": "192.0.2.6"}  |
| 5cea83cc-b674-47f4-ab96-1cb1a9275fd4 |                    | 00:7d:bb:da:47:e9 | {"subnet_id": "79e32ec4-41c7-489a-a59b-6e028f6fad6e", "ip_address": "192.0.2.11"} |
| fc26bdc6-fcb4-4fec-859d-502f59db4bdc | redis_virtual_ip   | fa:16:3e:02:e3:8c | {"subnet_id": "79e32ec4-41c7-489a-a59b-6e028f6fad6e", "ip_address": "192.0.2.7"}  |
+--------------------------------------+--------------------+-------------------+-----------------------------------------------------------------------------------+

[stack@instack ~]$ nova list
+--------------------------------------+-------------------------+--------+------------+-------------+---------------------+
| ID                                   | Name                    | Status | Task State | Power State | Networks            |
+--------------------------------------+-------------------------+--------+------------+-------------+---------------------+
| af69b0cc-e86e-4430-843a-841bc42f2ef6 | overcloud-cephstorage-0 | ACTIVE | -          | Running     | ctlplane=192.0.2.8  |
| 48974734-1160-4d87-b329-069f692df5b9 | overcloud-compute-0     | ACTIVE | -          | Running     | ctlplane=192.0.2.10 |
| b4e3487a-2e2d-472c-9b6b-f7fc8000dcae | overcloud-controller-0  | ACTIVE | -          | Running     | ctlplane=192.0.2.11 |
+--------------------------------------+-------------------------+--------+------------+-------------+-------------------

Comment 2 Giulio Fidente 2015-12-11 15:10:48 UTC
We used to create an additional public_ip even when not using network isolation in GA; this isn't the case anymore but we need to preserve it for backward compatibility on update

Comment 3 Giulio Fidente 2015-12-11 15:18:54 UTC
The version we u

Comment 4 Giulio Fidente 2015-12-11 15:44:46 UTC
The version we used to install in GA is:

openstack-tripleo-heat-templates-0.8.6-45.el7ost.noarch.rpm


A workaround to preserve the public vip when updating from GA to latest and not using network isolation is to add the following into a custom environment file:

resource_registry:
  OS::TripleO::Network::Ports::ExternalVipPort: /usr/share/openstack-tripleo-heat-templates/network/ports/ctlplane_vip.yaml


This should be passed as last argument to the update command and should be passed for any further update or config change attempt so can be merged into any pre-existing custom environment file.

Comment 13 errata-xmlrpc 2016-02-18 16:47:45 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://rhn.redhat.com/errata/RHBA-2016-0264.html