search domain not provided when using neutron internal dns

Bug #1827660 reported by Jason Hobbs
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Neutron API Charm
Triaged
Undecided
Unassigned

Bug Description

my bundle has dns-domain and enable-ml2-dns set, but a search domain is not being provided to instances.

bundle: http://paste.ubuntu.com/p/jtRf4C9hZV/

No DNS Domain is reported by netplan or systemd:

http://paste.ubuntu.com/p/DY9MwkYGt8/

Resolution of hostnames for other instances only works if I use FQDN:
ubuntu@juju-d9ac39-kubernetes-9:~$ systemd-resolve juju-d9ac39-kubernetes-10
juju-d9ac39-kubernetes-10: resolve call failed: No appropriate name servers or networks for name found
ubuntu@juju-d9ac39-kubernetes-9:~$ systemd-resolve juju-d9ac39-kubernetes-10.openstack.customername.lan
juju-d9ac39-kubernetes-10.openstack.customername.lan: 172.16.0.23

-- Information acquired via protocol DNS in 3.4ms.
-- Data is authenticated: no

Revision history for this message
Jason Hobbs (jason-hobbs) wrote :

This is blocking our test of deploying k8s on top of FCB. I think I have a workaround in using dnsmasq-flags, so marking it high rather than critical.

tags: added: field-high
tags: removed: field-high
Revision history for this message
Jason Hobbs (jason-hobbs) wrote :

sub'd to field high.

Revision history for this message
James Page (james-page) wrote :

I think this is bug 1774710; but please note there is a behaviour change in neutron which impacts rocky and queens which causes a different issue - neutron team are currently reviewing upstream but likely to revert a number of changes which includes the code that causes the issue you are seeing.

Revision history for this message
Dmitrii Shcherbakov (dmitriis) wrote :

It would be good to see if the --domain argument is being passed to dnsmasq processes spawned in qdhcp namespaces.

https://git.launchpad.net/~ubuntu-server-dev/ubuntu/+source/neutron/tree/neutron/agent/linux/dhcp.py?h=stable/queens#n422
        if self.conf.dns_domain:
            cmd.append('--domain=%s' % self.conf.dns_domain)

bug 1774710 seems very relevant but AFAIKS it is about passing dns_domain from a network object to dnsmasq rather than using a global config.

https://review.opendev.org/#/c/571546/7/neutron/agent/linux/dhcp.py
        self.dns_domain = self.network.get('dns_domain', self.conf.dns_domain)
# ...
        if self.dns_domain:
            cmd.append('--domain=%s' % self.dns_domain)

Jason's case is about the global config option (CONF/dns_domain) and he doesn't use the dns_domain network object attribute.

Revision history for this message
James Page (james-page) wrote :

This commit:

  https://opendev.org/openstack/neutron/commit/7fdd6adc7acf99e74fbe1c12606f8c867ae134ae

however I think that's only in our stein packages at the moment. But see my comments in #3

Changed in charm-neutron-api:
status: New → Triaged
Revision history for this message
Ryan Beisner (1chb1n) wrote :

We believe this issue was resolved in: https://bugs.launchpad.net/bugs/1774710.

If the issue persists, please re-raise with updated logs, sanitized bundles, juju-crashdump, version details, etc. Thank you.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.