Bug 1709846 - OVN upgrade from osp13 to osp14 failed on Overcloud upgrade preparation step
Summary: OVN upgrade from osp13 to osp14 failed on Overcloud upgrade preparation step
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 14.0 (Rocky)
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: z3
: 14.0 (Rocky)
Assignee: Jose Luis Franco
QA Contact: Sasha Smolyak
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-05-14 12:06 UTC by Eran Kuris
Modified: 2019-07-02 20:08 UTC (History)
8 users (show)

Fixed In Version: openstack-tripleo-heat-templates-9.3.1-0.20190513171736.9995be9.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-07-02 20:08:47 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 641764 0 None MERGED Add missing entries for Pure Storage Cinder Backend and fix typos 2020-06-02 09:39:42 UTC
Red Hat Product Errata RHBA-2019:1672 0 None None None 2019-07-02 20:08:59 UTC

Description Eran Kuris 2019-05-14 12:06:32 UTC
Description of problem:
The upgrade process failed from OSP13OVN to OSP14OVN on overcloud upgrade preparation step
2019-05-07 14:17:46 | {u'result': u'Failure caused by error in tasks: set_get_tempurl\n\n  set_get_tempurl [task_ex_id=68e6b02f-08ca-4e6d-9da7-dbaf66932054] -> Error validating environment for plan overcloud: ERROR: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\nTraceback (most recent call last):\n\n  File "/usr/lib/python2.7/site-packages/heat/common/context.py", line 409, in wrapped\n    return func(self, ctx, *args, **kwargs)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/service.py", line 1299, in validate_template\n    result.update(stack.get_nested_parameters(filter_parameter))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1083, in get_nested_parameters\n    for name, rsrc in six.iteritems(self.resources):\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 316, in resources\n    self._resources = self._resources_for_defn(self.defn)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in _resources_for_defn\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in <dictcomp>\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/resource.py", line 174, in __new__\n    resource_name=name)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/environment.py", line 561, in get_class_to_instantiate\n    raise exception.StackValidationFailed(message=six.text_type(exc))\n\nStackValidationFailed: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\n\n    [action_ex_id=7a94c1b0-6ce1-4f8b-8e28-3f8d114e0833, idx=0]: Error validating environment for plan overcloud: ERROR: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\nTraceback (most recent call last):\n\n  File "/usr/lib/python2.7/site-packages/heat/common/context.py", line 409, in wrapped\n    return func(self, ctx, *args, **kwargs)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/service.py", line 1299, in validate_template\n    result.update(stack.get_nested_parameters(filter_parameter))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1083, in get_nested_parameters\n    for name, rsrc in six.iteritems(self.resources):\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 316, in resources\n    self._resources = self._resources_for_defn(self.defn)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in _resources_for_defn\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in <dictcomp>\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/resource.py", line 174, in __new__\n    resource_name=name)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/environment.py", line 561, in get_class_to_instantiate\n    raise exception.StackValidationFailed(message=six.text_type(exc))\n\nStackValidationFailed: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\n\n', u'swift_container': u'overcloud-swift-rings'}
2019-05-07 14:17:46 | 2019-05-07 14:17:46.024 77085 ERROR openstack [-] Exception updating plan: {u'result': u'Failure caused by error in tasks: set_get_tempurl\n\n  set_get_tempurl [task_ex_id=68e6b02f-08ca-4e6d-9da7-dbaf66932054] -> Error validating environment for plan overcloud: ERROR: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\nTraceback (most recent call last):\n\n  File "/usr/lib/python2.7/site-packages/heat/common/context.py", line 409, in wrapped\n    return func(self, ctx, *args, **kwargs)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/service.py", line 1299, in validate_template\n    result.update(stack.get_nested_parameters(filter_parameter))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1083, in get_nested_parameters\n    for name, rsrc in six.iteritems(self.resources):\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 316, in resources\n    self._resources = self._resources_for_defn(self.defn)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in _resources_for_defn\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in <dictcomp>\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/resource.py", line 174, in __new__\n    resource_name=name)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/environment.py", line 561, in get_class_to_instantiate\n    raise exception.StackValidationFailed(message=six.text_type(exc))\n\nStackValidationFailed: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\n\n    [action_ex_id=7a94c1b0-6ce1-4f8b-8e28-3f8d114e0833, idx=0]: Error validating environment for plan overcloud: ERROR: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\nTraceback (most recent call last):\n\n  File "/usr/lib/python2.7/site-packages/heat/common/context.py", line 409, in wrapped\n    return func(self, ctx, *args, **kwargs)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/service.py", line 1299, in validate_template\n    result.update(stack.get_nested_parameters(filter_parameter))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1083, in get_nested_parameters\n    for name, rsrc in six.iteritems(self.resources):\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 316, in resources\n    self._resources = self._resources_for_defn(self.defn)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in _resources_for_defn\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in <dictcomp>\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/resource.py", line 174, in __new__\n    resource_name=name)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/environment.py", line 561, in get_class_to_instantiate\n    raise exception.StackValidationFailed(message=six.text_type(exc))\n\nStackValidationFailed: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\n\n', u'swift_container': u'overcloud-swift-rings'}: WorkflowServiceError: Exception updating plan: {u'result': u'Failure caused by error in tasks: set_get_tempurl\n\n  set_get_tempurl [task_ex_id=68e6b02f-08ca-4e6d-9da7-dbaf66932054] -> Error validating environment for plan overcloud: ERROR: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\nTraceback (most recent call last):\n\n  File "/usr/lib/python2.7/site-packages/heat/common/context.py", line 409, in wrapped\n    return func(self, ctx, *args, **kwargs)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/service.py", line 1299, in validate_template\n    result.update(stack.get_nested_parameters(filter_parameter))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1083, in get_nested_parameters\n    for name, rsrc in six.iteritems(self.resources):\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 316, in resources\n    self._resources = self._resources_for_defn(self.defn)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in _resources_for_defn\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in <dictcomp>\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/resource.py", line 174, in __new__\n    resource_name=name)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/environment.py", line 561, in get_class_to_instantiate\n    raise exception.StackValidationFailed(message=six.text_type(exc))\n\nStackValidationFailed: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\n\n    [action_ex_id=7a94c1b0-6ce1-4f8b-8e28-3f8d114e0833, idx=0]: Error validating environment for plan overcloud: ERROR: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\nTraceback (most recent call last):\n\n  File "/usr/lib/python2.7/site-packages/heat/common/context.py", line 409, in wrapped\n    return func(self, ctx, *args, **kwargs)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/service.py", line 1299, in validate_template\n    result.update(stack.get_nested_parameters(filter_parameter))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1101, in get_nested_parameters\n    params.update(nested.get_nested_parameters(filter_func))\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 1083, in get_nested_parameters\n    for name, rsrc in six.iteritems(self.resources):\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 316, in resources\n    self._resources = self._resources_for_defn(self.defn)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in _resources_for_defn\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/stack.py", line 310, in <dictcomp>\n    for name in stack_defn.enabled_rsrc_names()\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/resource.py", line 174, in __new__\n    resource_name=name)\n\n  File "/usr/lib/python2.7/site-packages/heat/engine/environment.py", line 561, in get_class_to_instantiate\n    raise exception.StackValidationFailed(message=six.text_type(exc))\n\nStackValidationFailed: The Resource Type (OS::TripleO::Services::CinderBackendPure) could not be found.\n\n', u'swift_container': u'overcloud-swift-rings'}[00m




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


How reproducible:


Steps to Reproduce:
1. run CI upgrade job https://rhos-qe-jenkins.rhev-ci-vms.eng.rdu2.redhat.com/view/DFG/view/network/view/networking-ovn/job/DFG-network-networking-ovn-upgrade-13-14_director-rhel-virthost-3cont_2comp_2net-ipv4-geneve-composable/93/artifact/.sh/ir-tripleo-overcloud-upgrade.log
2.
3.

Actual results:


Expected results:


Additional info:

Comment 3 Ronnie Rasouli 2019-05-15 06:23:21 UTC
Might https://bugs.launchpad.net/tripleo/+bug/1759326 related?

Comment 4 Jose Luis Franco 2019-05-20 15:42:14 UTC
Hello Eran,

would it be possible to login into some environment with the issue reproduced? From the logs I really can't see what's the reason why that service wouldn't be found...the default resource_registry is setting it to Noop (Heat::None), so it should just be skipped...and I can't find any service name missmatching...

Thanks.

Comment 5 Eran Kuris 2019-05-21 05:25:00 UTC
(In reply to Jose Luis Franco from comment #4)
> Hello Eran,
> 
> would it be possible to login into some environment with the issue
> reproduced? From the logs I really can't see what's the reason why that
> service wouldn't be found...the default resource_registry is setting it to
> Noop (Heat::None), so it should just be skipped...and I can't find any
> service name missmatching...
> 
> Thanks.

Luis, I don't have the setup but I will try to reproduce it on one of my hosts and I will post the details.

Comment 7 Alan Bishop 2019-05-21 12:34:05 UTC
CinderBackendPure is an optional service associated with the cinder driver associated with the Pure Storage SAN. Upstream patches merged on stable/rocky [1] and stable/queens [2] on March 18.

I think what may have happened (I'd need to see fresh deployment logs) is the OSP-13 build contained the patch that added support for the service, but the version of OSP-14 is _not_ contain the corresponding patch.

I think the problem will not occur as long as both OSP-13 and 14 contain the patch that adds support for CinderBackendPure.

[1] https://review.opendev.org/641764
[2] https://review.opendev.org/641766

Comment 12 Jose Luis Franco 2019-06-04 08:23:42 UTC
The patch seems to be include in the rhos-14.0-patches already, probably part of some periodic import.

Comment 17 errata-xmlrpc 2019-07-02 20:08:47 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-2019:1672


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