← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 2058725] Re: Nova clears Neutron port dns_name when shelving/unshelving instance

 

Reviewed:  https://review.opendev.org/c/openstack/nova/+/919961
Committed: https://opendev.org/openstack/nova/commit/593ac130b6182dc59439e1af6b5f1d4732b430e1
Submitter: "Zuul (22348)"
Branch:    master

commit 593ac130b6182dc59439e1af6b5f1d4732b430e1
Author: Andrew Bonney <andrew.bonney@xxxxxxxxx>
Date:   Fri May 17 13:58:39 2024 +0100

    Don't reset port dns_name when shelving instances
    
    Port dns_names are cleared when ports are detached in order to fix
    https://bugs.launchpad.net/nova/+bug/1572593. This incorrectly resets
    the dns_name for shelved instances where ports are not detached.
    
    This patch adds a conditional to ensure the dns_name is not
    unnecessarily reset.
    
    Closes-Bug: #2058725
    
    Change-Id: I6fdd3d6365196b4e470b72545ec649dfabe058d3
    Signed-Off-By: Dan Smith <dansmith@xxxxxxxxxx>


** Changed in: nova
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/2058725

Title:
  Nova clears Neutron port dns_name when shelving/unshelving instance

Status in OpenStack Compute (nova):
  Fix Released

Bug description:
  As far as I can tell this is likely to be a Nova issue rather than
  Neutron, but as it relates to both I can't be certain.

  Description
  ===========
  When an instance is first created, the 'dns_name' for its network port(s) reflects the instance name. When the instance is then shelved (and unshelved), this 'dns_name' disappears, resulting in an inability to resolve this VM by name using the tenant network's internal DNS servers.

  Steps to reproduce
  ==================
  * Deploy an OpenStack instance including Neutron internal DNS integration as-per https://docs.openstack.org/neutron/latest/admin/config-dns-int.html
  * Create an instance with any name and observe the matching DNS name associated with its network port.
  Example: openstack server create --flavor tempest1 --image cirros --network public my-instance
  * Shelve the instance and re-check the DNS name associated with the network port. Optionally unshelve to observe the issue persists.

  Expected result
  ===============
  The DNS name should always match the instance name, or at least should return to the correct value once the instance is unshelved.

  Actual result
  =============
  The DNS name is removed once the instance is shelved, resulting in a generic FQDN like 'host-172-29-249-175.example.org.'

  From the command line, after initial instance creation:

  root@aio1-utility-container-cd7fbf05:~# openstack port show f6d4723a-af13-40e5-b94a-bba7fb1fb9fb
  ...
  | dns_assignment          | fqdn='my-instance.example.org.', hostname='my-instance', ip_address='172.29.249.175' |
  | dns_domain              |                                                                                      |
  | dns_name                | my-instance                                                                          |
  ...

  After a shelve operation (and optionally after an unshelve):

  root@aio1-utility-container-cd7fbf05:~# openstack port show f6d4723a-af13-40e5-b94a-bba7fb1fb9fb
  ...
  | dns_assignment          | fqdn='host-172-29-249-175.example.org.', hostname='host-172-29-249-175', ip_address='172.29.249.175' |
  | dns_domain              |                                                                                                      |
  | dns_name                |                                                                                                      |
  ...

  Environment
  ===========
  Nova 2023.1 252e660
  Neutron 2023.1 29cc1a6
  Libvirt+KVM
  Ceph Reef
  Linux Bridge with VXLAN

  Also tested against 2023.2 releases.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/2058725/+subscriptions



References