Bug 1549770 - Downstream default to containerized servers fails for several non-default services such as Ironic etc.
Summary: Downstream default to containerized servers fails for several non-default ser...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 13.0 (Queens)
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: z2
: 13.0 (Queens)
Assignee: Bogdan Dobrelya
QA Contact: Artem Hrechanychenko
URL:
Whiteboard:
: 1540263 1551075 1562585 (view as bug list)
Depends On:
Blocks: RHOS-13-ppc64le 1581361
TreeView+ depends on / blocked
 
Reported: 2018-02-27 19:45 UTC by Alexander Chuzhoy
Modified: 2018-12-24 11:40 UTC (History)
20 users (show)

Fixed In Version: openstack-tripleo-heat-templates-8.0.4-6.el7ost
Doc Type: Release Note
Doc Text:
Containers are now the default deployment method. There is still a way to deploy the baremetal services in environments/baremetal-services.yaml, but this is expected to eventually disappear. Environment files with resource registries referencing environments/services-docker must be altered to the environments/services paths. If you need to retain any of the deployed baremetal services, update references to environments/services-baremetal instead of the originally placed environments/services.
Clone Of:
: 1581361 (view as bug list)
Environment:
Last Closed: 2018-08-29 16:34:51 UTC
Target Upstream Version:
Embargoed:
bdobreli: needinfo-


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1701532 0 None None None 2018-02-28 15:51:15 UTC
OpenStack gerrit 548554 0 None MERGED Enable containers by default 2020-06-18 11:29:04 UTC
OpenStack gerrit 550060 0 None MERGED Default environment/services/* to docker 2020-06-18 11:29:04 UTC
OpenStack gerrit 550081 0 None MERGED Add environment/services-baremetal/*. 2020-06-18 11:29:04 UTC
OpenStack gerrit 556794 0 None MERGED Delete not-used services-docker files 2020-06-18 11:29:04 UTC
OpenStack gerrit 560559 0 None MERGED Switch remaining env files to containers defaults 2020-06-18 11:29:04 UTC
Red Hat Product Errata RHBA-2018:2574 0 None None None 2018-08-29 16:35:49 UTC

Description Alexander Chuzhoy 2018-02-27 19:45:11 UTC
THT/environments/services/ironic.yaml and THT/environments/services-docker/ironic.yaml have a different content.

Environment:
python-ironicclient-1.17.0-1.el7ost.noarch
openstack-ironic-common-9.1.2-3.el7ost.noarch
python-ironic-inspector-client-2.1.0-1.el7ost.noarch
instack-undercloud-7.4.3-5.el7ost.noarch
openstack-ironic-api-9.1.2-3.el7ost.noarch
openstack-ironic-conductor-9.1.2-3.el7ost.noarch
openstack-ironic-inspector-6.0.0-3.el7ost.noarch
puppet-ironic-11.3.0-2.el7ost.noarch
python-ironic-lib-2.10.0-1.el7ost.noarch



We're not supposed to change the environment files when we do major upgrades and the following files differ:



[stack@undercloud-0 ~]$ cat /usr/share/openstack-tripleo-heat-templates/environments/services-docker/ironic.yaml
resource_registry:
  OS::TripleO::Services::IronicApi: ../../docker/services/ironic-api.yaml
  OS::TripleO::Services::IronicConductor: ../../docker/services/ironic-conductor.yaml
  OS::TripleO::Services::IronicPxe: ../../docker/services/ironic-pxe.yaml
  OS::TripleO::Services::NovaIronic: ../../docker/services/nova-ironic.yaml
parameter_defaults:
  NovaSchedulerDiscoverHostsInCellsInterval: 15



[stack@undercloud-0 ~]$ cat /usr/share/openstack-tripleo-heat-templates/environments/services/ironic.yaml
resource_registry:
  OS::TripleO::Services::IronicApi: ../../docker/services/ironic-api.yaml
  OS::TripleO::Services::IronicConductor: ../../docker/services/ironic-conductor.yaml
  OS::TripleO::Services::NovaIronic: ../../docker/services/nova-ironic.yaml
parameter_defaults:
  NovaSchedulerDiscoverHostsInCellsInterval: 15


The above suggests there will be issues on an upgraded setup OSP11->OSP12 (going from non-containerized to containerized ironic).

Comment 4 Bob Fournier 2018-02-27 20:44:41 UTC
The docs for OSP-12 - https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/12/html-single/bare_metal_provisioning/#sect-deploy 

still reference using the one in services (not services-docker)
usr/share/openstack-tripleo-heat-templates/environments/services/ironic.yaml
which will cause a problem because of the missing ironic-pxe.yaml.

Comment 5 Harald Jensås 2018-02-27 21:33:44 UTC
I think there are issues with other services as well.

For example Octavia:
 OctaviaDeploymentConfig service is missing?
 OctaviaGenerateCerts parameter set in docker-services but not in services

cat environments/services/octavia.yaml 
resource_registry:
  OS::TripleO::Services::OctaviaApi: ../../docker/services/octavia-api.yaml
  OS::TripleO::Services::OctaviaHealthManager: ../../docker/services/octavia-health-manager.yaml
  OS::TripleO::Services::OctaviaHousekeeping: ../../docker/services/octavia-housekeeping.yaml
  OS::TripleO::Services::OctaviaWorker: ../../docker/services/octavia-worker.yaml

parameter_defaults:
    NeutronServicePlugins: "qos,router,trunk"
    NeutronEnableForceMetadata: true

cat environments/services-docker/octavia.yaml 
resource_registry:
  OS::TripleO::Services::OctaviaApi: ../../docker/services/octavia-api.yaml
  OS::TripleO::Services::OctaviaHousekeeping: ../../docker/services/octavia-housekeeping.yaml
  OS::TripleO::Services::OctaviaHealthManager: ../../docker/services/octavia-health-manager.yaml
  OS::TripleO::Services::OctaviaWorker: ../../docker/services/octavia-worker.yaml
  OS::TripleO::Services::OctaviaDeploymentConfig: ../../docker/services/octavia/octavia-deployment-config.yaml

parameter_defaults:
    NeutronServicePlugins: "qos,router,trunk"
    NeutronEnableForceMetadata: true

    # This flag enables internal generation of certificates for communication
    # with amphorae. Use OctaviaCaCert, OctaviaCaKey, OctaviaCaKeyPassphrase
    # and OctaviaClient cert to configure secure production environments.
    OctaviaGenerateCerts: true

Comment 6 Marius Cornea 2018-02-27 21:48:06 UTC
Adding more context on this issue - initially this should have been addressed by bug 1470016 which was filed so the user should not be required to switch the environment files during upgrade and make the existing ones backward compatible.

Comment 8 Ramon Acedo 2018-02-28 09:36:00 UTC
This BZ looks like BZ#1540263 reported by Rafal last month.

Comment 10 Bogdan Dobrelya 2018-02-28 15:17:38 UTC
*** Bug 1540263 has been marked as a duplicate of this bug. ***

Comment 11 Harald Jensås 2018-02-28 15:32:10 UTC
Discussed on IRC with Bogdan Dobrelya and Martin André.

The downstream patch introduced in OSP-12 does not correctly change the services to containers by default. Files environments/*.yaml is updated to reference files in ../docker/, but they also should have been updated to match what is in corresponding environments/docer-services/*.yaml files.

Current plan:
 Revert Downstream patch: 
   OSP-13: https://code.engineering.redhat.com/gerrit/#/c/128066
   OSP-12: https://code.engineering.redhat.com/gerrit/#/c/116463
 Clean up to resolve the source of truth for desynced files
 Make containers default upstream:
   https://review.openstack.org/#/c/546181/
 Backport ^^ downstream

Comment 12 Bob Fournier 2018-02-28 15:52:40 UTC
Changing DFG as potential docker fixes (https://review.openstack.org/#/c/546181/) are outside realm of HardProv (setting it to DF assuming Containers DFG is no longer active).

Comment 13 Bob Fournier 2018-03-02 18:02:28 UTC
*** Bug 1551075 has been marked as a duplicate of this bug. ***

Comment 14 Harald Jensås 2018-03-05 16:17:55 UTC
I fail to see how: https://review.openstack.org/548554 fixes the issue for services like octavi and ironic which in overcloud-resource-registry-puppet.j2.yaml is  OS::Heat::None.

Comment 16 Bogdan Dobrelya 2018-03-05 16:20:49 UTC
@Harald, right https://review.openstack.org/#/c/548554/ as is would not fix that. The discussion is to make it promising a follow-up patch that addresses the remaining work for environment/services/* updates

Comment 17 Ramon Acedo 2018-03-05 16:48:40 UTC
Shouldn't this BZ be set back to ON_DEV since there's work pending and the Ironic service won't be fixed with this update?

Comment 18 Bogdan Dobrelya 2018-03-05 17:08:56 UTC
@Harald, I hope the missing changes in overcloud-resource-registry-puppet.j2.yaml could be picked up from the initial (abandoned) patch https://review.openstack.org/#/c/546181/5/overcloud-resource-registry-puppet.j2.yaml

Comment 20 Dan Radez 2018-03-16 14:23:22 UTC
I needed ironic-pxe so I filed this upstream:
https://review.openstack.org/#/c/553796/

It will probably need some grooming

Comment 21 Bogdan Dobrelya 2018-04-06 08:02:17 UTC
Heads up, after https://review.openstack.org/#/c/556794/ we could proceed with the downstream part of the required changes

Comment 22 Bogdan Dobrelya 2018-04-11 16:29:37 UTC
There is also related https://bugzilla.redhat.com/show_bug.cgi?id=1565975

Comment 43 Artem Hrechanychenko 2018-08-06 13:06:04 UTC
VERIFIED


openstack-tripleo-heat-templates-8.0.4-10.el7ost.noarch.rpm

[ahre@KH329 openstack-tripleo-heat-templates]$ cat  environments/services/ironic.yaml environments/services-docker/ironic.yaml
resource_registry:
  OS::TripleO::Services::IronicApi: ../../docker/services/ironic-api.yaml
  OS::TripleO::Services::IronicConductor: ../../docker/services/ironic-conductor.yaml
  OS::TripleO::Services::IronicPxe: ../../docker/services/ironic-pxe.yaml
  OS::TripleO::Services::NovaIronic: ../../docker/services/nova-ironic.yaml
resource_registry:
  OS::TripleO::Services::IronicApi: ../../docker/services/ironic-api.yaml
  OS::TripleO::Services::IronicConductor: ../../docker/services/ironic-conductor.yaml
  OS::TripleO::Services::IronicPxe: ../../docker/services/ironic-pxe.yaml
  OS::TripleO::Services::NovaIronic: ../../docker/services/nova-ironic.yaml
[ahre@KH329 openstack-tripleo-heat-templates]$ diff environments/services/ironic.yaml environments/services-docker/ironic.yaml
[ahre@KH329 openstack-tripleo-heat-templates]$ echo $?
0

Comment 44 Joanne O'Flynn 2018-08-14 11:07:15 UTC
This bug is marked for inclusion in the errata but does not currently contain draft documentation text. To ensure the timely release of this advisory please provide draft documentation text for this bug as soon as possible.

If you do not think this bug requires errata documentation, set the requires_doc_text flag to "-".


To add draft documentation text:

* Select the documentation type from the "Doc Type" drop down field.

* A template will be provided in the "Doc Text" field based on the "Doc Type" value selected. Enter draft text in the "Doc Text" field.

Comment 45 Tony Breeds 2018-08-28 05:13:55 UTC
*** Bug 1562585 has been marked as a duplicate of this bug. ***

Comment 47 errata-xmlrpc 2018-08-29 16:34:51 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:2574


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