Description of problem: dnsmasq-utils-2.66 doesn't include dhcp_release6 binary on RHOSP10 Version-Release number of selected component (if applicable): Red Hat OpenStack 10 How reproducible: Reproduced on customer environment Reproduced on Lab environment Steps to Reproduce: ~~~ # rpm -ql dnsmasq-utils-2.66-21.el7.x86_64 /usr/bin/dhcp_lease_time /usr/bin/dhcp_release /usr/share/man/man1/dhcp_lease_time.1.gz /usr/share/man/man1/dhcp_release.1.gz ~~~ Actual results: Due to this when VM destroyed the lease is not removed in dnsmasq leases file, For example: # cat /var/lib/neutron/dhcp/0c3af617-acd3-4bd3-86d2-7cdba82893c5/leases duid 00:01:00:01:22:11:7e:ac:fa:16:3e:bc:d8:06 1518427996 1053517130 xxx:xxx:xxx:xxx::xx host-2001-xxx-xxxx-e01--15 xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx Below exception from neutron dhcp-agent.log indicate that it depends on dhcp_release6 binary. ~~~ $ grep dhcp_release6 sosreport-overcloud-controller-0.02033012-20180212105751/var/log/neutron/dhcp-agent.log 2018-02-12 08:28:58.306 97074 DEBUG neutron.agent.linux.utils [req-ef61cc7b-5e3b-4e9d-b942-65246f63a126 9e16ad0a563d436e9f83533773c19e14 5f1b1e40249641ac9c96cf779b60119c - - -] Running command: ['env', 'LC_ALL=C', 'dhcp_release6', '--help'] create_process /usr/lib/python2.7/site-packages/neutron/agent/linux/utils.py:89 2018-02-12 08:28:58.313 97074 ERROR neutron.agent.linux.utils [req-ef61cc7b-5e3b-4e9d-b942-65246f63a126 9e16ad0a563d436e9f83533773c19e14 5f1b1e40249641ac9c96cf779b60119c - - -] Exit code: 127; Stdin: ; Stdout: ; Stderr: env: dhcp_release6: No such file or directory 2018-02-12 08:28:58.314 97074 DEBUG neutron.cmd.sanity.checks [req-ef61cc7b-5e3b-4e9d-b942-65246f63a126 9e16ad0a563d436e9f83533773c19e14 5f1b1e40249641ac9c96cf779b60119c - - -] Exception while checking dhcp_release6. Exception: Exit code: 127; Stdin: ; Stdout: ; Stderr: env: dhcp_release6: No such file or directory dhcp_release6_supported /usr/lib/python2.7/site-packages/neutron/cmd/sanity/checks.py:226 2018-02-12 08:28:58.314 97074 WARNING neutron.agent.linux.dhcp [req-ef61cc7b-5e3b-4e9d-b942-65246f63a126 9e16ad0a563d436e9f83533773c19e14 5f1b1e40249641ac9c96cf779b60119c - - -] dhcp_release6 is not present on this system, will not call it again. 2018-02-12 10:47:29.968 345841 DEBUG neutron.agent.linux.utils [req-a3a679b6-ba45-4ed0-b9f8-68302d338cd3 9e16ad0a563d436e9f83533773c19e14 5f1b1e40249641ac9c96cf779b60119c - - -] Running command: ['env', 'LC_ALL=C', 'dhcp_release6', '--help'] create_process /usr/lib/python2.7/site-packages/neutron/agent/linux/utils.py:89 2018-02-12 10:47:29.975 345841 ERROR neutron.agent.linux.utils [req-a3a679b6-ba45-4ed0-b9f8-68302d338cd3 9e16ad0a563d436e9f83533773c19e14 5f1b1e40249641ac9c96cf779b60119c - - -] Exit code: 127; Stdin: ; Stdout: ; Stderr: env: dhcp_release6: No such file or directory 2018-02-12 10:47:29.976 345841 DEBUG neutron.cmd.sanity.checks [req-a3a679b6-ba45-4ed0-b9f8-68302d338cd3 9e16ad0a563d436e9f83533773c19e14 5f1b1e40249641ac9c96cf779b60119c - - -] Exception while checking dhcp_release6. Exception: Exit code: 127; Stdin: ; Stdout: ; Stderr: env: dhcp_release6: No such file or directory dhcp_release6_supported /usr/lib/python2.7/site-packages/neutron/cmd/sanity/checks.py:226 2018-02-12 10:47:29.976 345841 WARNING neutron.agent.linux.dhcp [req-a3a679b6-ba45-4ed0-b9f8-68302d338cd3 9e16ad0a563d436e9f83533773c19e14 5f1b1e40249641ac9c96cf779b60119c - - -] dhcp_release6 is not present on this system, will not call it again. ~~~ Expected results: dhcp_release6 should present dnsmasq-utils package similar to OSP12 on the dnsmasq-utils package and release IPv6 entries from DHCP lease. ~~~ # rpm -ql dnsmasq-utils-2.76-2.el7_4.2.x86_64 /usr/bin/dhcp_lease_time /usr/bin/dhcp_release /usr/bin/dhcp_release6 /usr/share/man/man1/dhcp_lease_time.1.gz /usr/share/man/man1/dhcp_release.1.gz /usr/share/man/man1/dhcp_release6.1.gz # yum info dnsmasq-utils-2.76-2.el7_4.2.x86_64 Loaded plugins: product-id, search-disabled-repos, subscription-manager Installed Packages Name : dnsmasq-utils Arch : x86_64 Version : 2.76 Release : 2.el7_4.2 Size : 39 k Repo : installed From repo : rhel-7-server-openstack-12-rpms Summary : Utilities for manipulating DHCP server leases URL : http://www.thekelleys.org.uk/dnsmasq/ License : GPLv2 or GPLv3 Description : Utilities that use the standard DHCP protocol to : query/remove a DHCP server's leases. ~~~ Additional info: Impacting to customer environment.
According to brewweb, dnsmasq 2.76 is tagged in RHEL 7.4, and that includes dnsmasq-utils-2.76 which includes dhcp6_release. OSP 10 is supported on RHEL 7.4, so the customer should get the correct dnsmasq and dnsmasq-utils package. Can you please confirm the customer is on latest RHEL?
Assigning to Bernard. We triaged this bug on a triaging team call and it seems like dnsmasq and dnsmasq-utils don't have shared code and are essentially independent, meaning they can run with mismatched versions, so the solution is to require a minimal version of dnsmasq-utils in the Neutron spec.
The actual RFE here was #1375569, only issue is that we do not explicitely require 2.76 in openstac-neutron spec.
According to our records, this should be resolved by openstack-neutron-9.4.1-19.el7ost. This build is available now.
Hi there, If this bug requires doc text for errata release, please set the 'Doc Type' and provide draft text according to the template in the 'Doc Text' field. The documentation team will review, edit, and approve the text. If this bug does not require doc text, please set the 'requires_doc_text' flag to -. Thanks, Alex
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/RHSA-2018:2715