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

Bug 2181348

Summary: [DDF] Update config reference and minor udpate guide for nova::metadata::dhcp_domain and nova::dhcp_domain
Product: Red Hat OpenStack Reporter: Direct Docs Feedback <ddf-bot>
Component: documentationAssignee: kgilliga
Status: CLOSED CURRENTRELEASE QA Contact: RHOS Documentation Team <rhos-docs>
Severity: medium Docs Contact:
Priority: medium    
Version: 16.2 (Train)CC: alifshit, astillma, bdobreli, fpalin, igallagh, jansari, jpretori, kgilliga, mlaniel, mschuppe, owalsh, sathlang, smooney
Target Milestone: ---Keywords: Reopened, Triaged
Target Release: ---   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-05-16 18:58:47 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Direct Docs Feedback 2023-03-23 18:49:01 UTC
dhcp_domain still appears under "9.1.2 api " section. It should instead now appear under "9.1.1 DEFAULT" section as per https://opendev.org/openstack/tripleo-heat-templates/blame/branch/stable/train/deployment/nova/nova-base-puppet.yaml#L312
Thank you.

Reported by: rhn-support-fpalin

https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.2/html/configuration_reference/nova_4#annotations:a8056e30-7b38-4622-8fe4-9ce26603324d

Comment 1 Jacob Ansari 2023-03-24 01:46:35 UTC
This change occurred in 16.2 and also seems to apply to 17 which means OSP 17 docs might also need need to be looked at : https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/17.0/html/configuration_reference/nova_4#annotations:a8056e30-7b38-4622-8fe4-9ce26603324d



(oldest and newest pkg release for 16.1 , 16.2 and 17.0) : 

# 16.1
./openstack-tripleo-heat-templates-11.3.2-0.20200616081532.396affd.el8ost.noarch.rpm_temp/usr/share/openstack-tripleo-heat-templates/deployment/nova/nova-base-puppet.yaml:          nova::metadata::dhcp_domain: ''
./openstack-tripleo-heat-templates-11.3.2-1.20221013153262.el8ost.noarch.rpm_temp/usr/share/openstack-tripleo-heat-templates/deployment/nova/nova-base-puppet.yaml:          nova::metadata::dhcp_domain: ''

# 16.2 
./openstack-tripleo-heat-templates-11.5.1-2.20210603174823.el8ost.9.noarch.rpm_temp/usr/share/openstack-tripleo-heat-templates/deployment/nova/nova-base-puppet.yaml:          nova::dhcp_domain: ''
./openstack-tripleo-heat-templates-11.6.1-2.20221010235135.el8ost.noarch.rpm_temp/usr/share/openstack-tripleo-heat-templates/deployment/nova/nova-base-puppet.yaml:          nova::dhcp_domain: ''

#17
./openstack-tripleo-heat-templates-14.3.1-0.20220719171727.feca772.el9ost.noarch.rpm_temp/usr/share/openstack-tripleo-heat-templates/deployment/nova/nova-base-puppet.yaml:          nova::dhcp_domain: ''
./openstack-tripleo-heat-templates-14.3.1-0.20221208160327.feca772.el9ost.noarch.rpm_temp/usr/share/openstack-tripleo-heat-templates/deployment/nova/nova-base-puppet.yaml:          nova::dhcp_domain: ''

Comment 7 Bogdan Dobrelya 2023-03-27 13:08:29 UTC
Note for a potentially breaking change :https://review.opendev.org/c/openstack/tripleo-heat-templates/+/765132 during 16.1->16.2 update:

- for 16.1, t-h-t by default used to specify nova::metadata::dhcp_domain: '' for the common puppet base config, which resulted for all Nova, but metadata, services taking the service default value 'novalocal' (https://opendev.org/openstack/nova/src/branch/stable/train/nova/conf/api.py#L214) for DEFAULT/dhcp_domain, unless there is a nova::dhcp_domain Hiera override for it.
- for 16.2, after the above t-h-t change, nova::metadata::dhcp_domain is no longer configured in Hiera, so that api/dhcp_domain for Metadata is taking the service default value (which should be fine for Nova compute services). But it sets nova::dhcp_domain: '', so that all Nova services get '' instead of the service default value, unless there is a Hiera override for nova::metadata::dhcp_domain.
- breaking situation becomes possible, when either of [api|DEFAULT]/dhcp_domain changed on computes, which is either of nova::metadata::dhcp_domain, or nova::dhcp_domain are missing Hiera overrides in t-h-t extra configs.

We should document to always specify nova::dhcp_domain to match existing nova.conf dhcp_domain values (only the domain part of those FQDNs), for all compute* roles' t-h-t extra configs. Then we can guarantee that no hostname/dhcp_domain changes will be done to Nova computes.

Comment 8 Bogdan Dobrelya 2023-03-27 13:31:20 UTC
A correction to the above comment:

16.1 used to include metadata class for nova computes' conf to contain api/dhcp_domain https://review.opendev.org/c/openstack/puppet-tripleo/+/668949/5/manifests/profile/base/nova/compute.pp#85
16.2 stopped including metadata class for computes... https://review.opendev.org/c/openstack/puppet-tripleo/+/762415/2/manifests/profile/base/nova/compute.pp#b86
	dependency change to set DEFAULT/dhcp_option instead of api/dhcp_domain, also retaining its original nova::metadata::dhcp_domain 16.1 values
		a follow-up that broke that connection to the legacy values https://review.opendev.org/c/openstack/puppet-nova/+/774478/4/manifests/init.pp#b642
			^^ at this point this became potentially breaking as described above

Comment 9 Bogdan Dobrelya 2023-03-28 15:27:42 UTC
Please correct me, if I'm wrong, but a user provided nova::metadata::dhcp_domain in 16.1, becomes no longer connected into puppet for 16.2.
And unless it has been switched, before updating to 16.2, to the same value - to become defined via nova::dhcp_domain instead, - the dhcp_domain in nova.conf will be changed in result

Comment 14 Artom Lifshitz 2023-04-26 15:19:01 UTC
Re-opening, we'll need to update the config reference, and have a warning in the minor update guide to make sure both nova::metadata::dhcp_domain and nova::dhcp_domain are set to the same valid.

Comment 17 Artom Lifshitz 2023-05-16 16:59:56 UTC
Going to address a couple of point in one comment.

From the original description:

> dhcp_domain still appears under "9.1.2 api " section. It should instead now appear under "9.1.1 DEFAULT" section as per
> https://opendev.org/openstack/tripleo-heat-templates/blame/branch/stable/train/deployment/nova/nova-base-puppet.yaml#L312

The config reference is actually correct. This is confusing because Nova moved the dhcp_domain option from DEFAULT to api. puppet-nova, OTOH, moved dhcp_domain from `metadata` to the base (so `nova::dhcp_domain`), which is kinda like puppet-nova's equivalent of Nova's DEFAULT.

> Re-opening, we'll need to update the config reference

This is incorrect, see above.

> and have a warning in the minor update guide to make sure both nova::metadata::dhcp_domain and nova::dhcp_domain are set to the same valid.

This we still need to do.

Comment 18 Artom Lifshitz 2023-05-16 17:14:33 UTC
(In reply to Artom Lifshitz from comment #17)
> Going to address a couple of point in one comment.
> 
> From the original description:
> 
> > dhcp_domain still appears under "9.1.2 api " section. It should instead now appear under "9.1.1 DEFAULT" section as per
> > https://opendev.org/openstack/tripleo-heat-templates/blame/branch/stable/train/deployment/nova/nova-base-puppet.yaml#L312
> 
> The config reference is actually correct. This is confusing because Nova
> moved the dhcp_domain option from DEFAULT to api. puppet-nova, OTOH, moved
> dhcp_domain from `metadata` to the base (so `nova::dhcp_domain`), which is
> kinda like puppet-nova's equivalent of Nova's DEFAULT.
> 
> > Re-opening, we'll need to update the config reference
> 
> This is incorrect, see above.
> 
> > and have a warning in the minor update guide to make sure both nova::metadata::dhcp_domain and nova::dhcp_domain are set to the same valid.
> 
> This we still need to do.

Specifically, what we need is that for any release before z6, at which point Bogdan's fix for https://bugzilla.redhat.com/show_bug.cgi?id=2181566 will be available, we need a note in the updates doc to state that until that fix is released in z6, both versions of dhcp_domain needs to be set in the puppet-nova params.

Comment 20 Artom Lifshitz 2023-05-16 18:00:01 UTC
Google Doc looks good to me, thanks!

Comment 22 Red Hat Bugzilla 2023-12-20 04:25:25 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 120 days