dnsmasq fails to start

Bug #1167447 reported by david martin on 2013-04-10
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
High
Pádraig Brady
Grizzly
High
Pádraig Brady

Bug Description

running 2013.1 on CentOS 6.4, error only occurred after moving to grizzly (previously running folsom)
upon starting nova-network:

2013-04-10 11:51:28.993 54896 INFO nova.manager [-] Skipping periodic task _periodic_update_dns because its interval is negative
2013-04-10 11:51:28.994 54896 INFO nova.network.driver [-] Loading network driver 'nova.network.linux_net'
2013-04-10 11:51:29.016 54896 AUDIT nova.service [-] Starting network node (version 2013.1-1.el6)
2013-04-10 11:51:33.176 54896 CRITICAL nova [-] Unexpected error while running command.
Command: sudo nova-rootwrap /etc/nova/rootwrap.conf env CONFIG_FILE=["/etc/nova/nova.conf"] NETWORK_ID=1 dnsmasq --strict-order --bind-interfaces --conf-file=/etc/dnsmasq-nova.conf --domain='nova.local' --pid-file=/var/lib/nova/networks/nova-br128.pid --listen-address=10.1.128.12 --except-interface=lo --dhcp-range=set:rbchq0,10.1.128.3,static,255.255.252.0,120s --dhcp-lease-max=1024 --dhcp-hostsfile=/var/lib/nova/networks/nova-br128.conf --dhcp-script=/usr/bin/nova-dhcpbridge --leasefile-ro --no-hosts
Exit code: 1
Stdout: ''
Stderr: '\ndnsmasq: bad command line options: try --help\n'
2013-04-10 11:51:33.176 54896 TRACE nova Traceback (most recent call last):
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/bin/nova-network", line 54, in <module>
2013-04-10 11:51:33.176 54896 TRACE nova service.wait()
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/service.py", line 689, in wait
2013-04-10 11:51:33.176 54896 TRACE nova _launcher.wait()
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/service.py", line 209, in wait
2013-04-10 11:51:33.176 54896 TRACE nova super(ServiceLauncher, self).wait()
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/service.py", line 179, in wait
2013-04-10 11:51:33.176 54896 TRACE nova service.wait()
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/eventlet/greenthread.py", line 166, in wait
2013-04-10 11:51:33.176 54896 TRACE nova return self._exit_event.wait()
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/eventlet/event.py", line 116, in wait
2013-04-10 11:51:33.176 54896 TRACE nova return hubs.get_hub().switch()
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/eventlet/hubs/hub.py", line 177, in switch
2013-04-10 11:51:33.176 54896 TRACE nova return self.greenlet.switch()
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/eventlet/greenthread.py", line 192, in main
2013-04-10 11:51:33.176 54896 TRACE nova result = function(*args, **kwargs)
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/service.py", line 147, in run_server
2013-04-10 11:51:33.176 54896 TRACE nova server.start()
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/service.py", line 429, in start
2013-04-10 11:51:33.176 54896 TRACE nova self.manager.init_host()
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/network/manager.py", line 1680, in init_host
2013-04-10 11:51:33.176 54896 TRACE nova NetworkManager.init_host(self)
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/network/manager.py", line 345, in init_host
2013-04-10 11:51:33.176 54896 TRACE nova self._setup_network_on_host(ctxt, network)
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/openstack/common/lockutils.py", line 228, in inner
2013-04-10 11:51:33.176 54896 TRACE nova retval = f(*args, **kwargs)
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/network/manager.py", line 1837, in _setup_network_on_host
2013-04-10 11:51:33.176 54896 TRACE nova self.driver.update_dhcp(elevated, dev, network)
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/network/linux_net.py", line 938, in update_dhcp
2013-04-10 11:51:33.176 54896 TRACE nova restart_dhcp(context, dev, network_ref)
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/openstack/common/lockutils.py", line 242, in inner
2013-04-10 11:51:33.176 54896 TRACE nova retval = f(*args, **kwargs)
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/network/linux_net.py", line 1049, in restart_dhcp
2013-04-10 11:51:33.176 54896 TRACE nova _execute(*cmd, run_as_root=True)
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/network/linux_net.py", line 1142, in _execute
2013-04-10 11:51:33.176 54896 TRACE nova return utils.execute(*cmd, **kwargs)
2013-04-10 11:51:33.176 54896 TRACE nova File "/usr/lib/python2.6/site-packages/nova/utils.py", line 239, in execute
2013-04-10 11:51:33.176 54896 TRACE nova cmd=' '.join(cmd))
2013-04-10 11:51:33.176 54896 TRACE nova ProcessExecutionError: Unexpected error while running command.
2013-04-10 11:51:33.176 54896 TRACE nova Command: sudo nova-rootwrap /etc/nova/rootwrap.conf env CONFIG_FILE=["/etc/nova/nova.conf"] NETWORK_ID=1 dnsmasq --strict-order --bind-interfaces --conf-file=/etc/dnsmasq-nova.conf --domain='nova.local' --pid-file=/var/lib/nova/networks/nova-br128.pid --listen-address=10.1.128.12 --except-interface=lo --dhcp-range=set:rbchq0,10.1.128.3,static,255.255.252.0,120s --dhcp-lease-max=1024 --dhcp-hostsfile=/var/lib/nova/networks/nova-br128.conf --dhcp-script=/usr/bin/nova-dhcpbridge --leasefile-ro --no-hosts
2013-04-10 11:51:33.176 54896 TRACE nova Exit code: 1
2013-04-10 11:51:33.176 54896 TRACE nova Stdout: ''
2013-04-10 11:51:33.176 54896 TRACE nova Stderr: '\ndnsmasq: bad command line options: try --help\n'
2013-04-10 11:51:33.176 54896 TRACE nova

if i attempt to run the dnsmasq command myself it does not complain

david martin (dmartls1) on 2013-04-10
description: updated
Pádraig Brady (p-draigbrady) wrote :

Seems like this might be fixed with https://review.openstack.org/#/c/25733/

Changed in nova:
assignee: nobody → Pádraig Brady (p-draigbrady)
status: New → Confirmed
importance: Undecided → Critical
importance: Critical → High
Changed in nova:
status: Confirmed → Fix Committed

Reviewed: https://review.openstack.org/26756
Committed: http://github.com/openstack/nova/commit/3861f8c60cc46e9a00b06ca2bb8de91da8a22c6b
Submitter: Jenkins
Branch: stable/grizzly

commit 3861f8c60cc46e9a00b06ca2bb8de91da8a22c6b
Author: Pádraig Brady <email address hidden>
Date: Fri Mar 29 16:50:24 2013 +0000

    improve handling of an empty dnsmasq --domain

    Currently all domains passed through the dnsmasq --domain option,
    are single quoted. It's not fully understood how dnsmasq handles
    single quotes in this situation, so it's safer to just avoid the
    --domain option in this case.

    Fixes bug: 1161506
    Fixes bug: 1167447
    Change-Id: I8ecd996676189f53908abd48fee81132091ee820
    Cherry-picked: 24b9731af34fbc2fb17c849cb8cdb5c7a10db77d

Thierry Carrez (ttx) on 2013-05-29
Changed in nova:
milestone: none → havana-1
status: Fix Committed → Fix Released
Thierry Carrez (ttx) on 2013-10-17
Changed in nova:
milestone: havana-1 → 2013.2
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers