yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #36931
[Bug 1485606] Re: Unable to enable dhcp for networkid
This looks like more of a rabbit issue than a Neutron issue. It is most
likely deployment specific: Bad configuration etc.
** Changed in: neutron
Status: New => Invalid
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1485606
Title:
Unable to enable dhcp for networkid
Status in neutron:
Invalid
Bug description:
Installed Mirantis Open Stack 6.0 release in ubuntu. Neutron vlan
network is created but the VMs created on private network are not
getting DHCP IP address.
Toploogy : 1 fuel node, 1 controller and 2 compute nodes.
All eth0s are connected to L2 switch for PXE boot,
eth1s are connected to uplink switch for connectivity,
eth2 are connected to L2 switch for Management/Storage network and
eth3s are connected to L2 switch for Private network
Verified the connections between Fuel, controller and compute nodes,
everything is proper. Seeing "Unable to enable dhcp for <network id>“
in /var/log/neutron/dhcp-agent.log.
2015-07-20 10:05:23.255 10139 ERROR neutron.agent.dhcp_agent [req-fe1305ed-17da-4863-9b04-ca418495256d None] Unable to enable dhcp for 0aff4aa3-e393-499d-b3bc-5c90dd3655b1.
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent Traceback (most recent call last):
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/neutron/agent/dhcp_agent.py", line 129, in call_driver
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent getattr(driver, action)(**action_kwargs)
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/neutron/agent/linux/dhcp.py", line 204, in enable
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent interface_name = self.device_manager.setup(self.network)
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/neutron/agent/linux/dhcp.py", line 929, in setup
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent port = self.setup_dhcp_port(network)
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/neutron/agent/linux/dhcp.py", line 910, in setup_dhcp_port
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent dhcp_port = self.plugin.create_dhcp_port({'port': port_dict})
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/neutron/agent/dhcp_agent.py", line 439, in create_dhcp_port
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent host=self.host))
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/neutron/common/log.py", line 34, in wrapper
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent return method(*args, **kwargs)
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/neutron/common/rpc.py", line 161, in call
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent context, msg, rpc_method='call', **kwargs)
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/neutron/common/rpc.py", line 187, in __call_rpc_method
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent return func(context, msg['method'], **msg['args'])
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/oslo/messaging/rpc/client.py", line 389, in call
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent return self.prepare().call(ctxt, method, **kwargs)
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/oslo/messaging/rpc/client.py", line 152, in call
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent retry=self.retry)
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/oslo/messaging/transport.py", line 90, in _send
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent timeout=timeout, retry=retry)
2015-07-20 10:05:23.255 10139 TRACE neutron.agent.dhcp_agent File "/usr/lib/python2.7/dist-packages/oslo/messaging/_drivers/amqpdriver.py", line 434, in send
This is server log output - seeing AMPQ connection issue
2015-07-20 10:01:30.204 9808 TRACE oslo.messaging._drivers.impl_rabbit (class_id, method_id), ConnectionError)
2015-07-20 10:01:30.204 9808 TRACE oslo.messaging._drivers.impl_rabbit ConnectionForced: (0, 0): (320) CONNECTION_FORCED - broker forced connection closure with reason 'shutdown'
2015-07-20 10:01:30.204 9808 TRACE oslo.messaging._drivers.impl_rabbit
2015-07-20 10:01:30.215 9808 INFO oslo.messaging._drivers.impl_rabbit [-] Delaying reconnect for 5.0 seconds ...
2015-07-20 10:01:30.216 9808 ERROR oslo.messaging._drivers.impl_rabbit [-] Failed to consume message from queue: (0, 0): (320) CONNECTION_FORCED - broker forced connection closure with reason 'shutdown'
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit Traceback (most recent call last):
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit File "/usr/lib/python2.7/dist-packages/oslo/messaging/_drivers/impl_rabbit.py", line 681, in ensure
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit return method()
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit File "/usr/lib/python2.7/dist-packages/oslo/messaging/_drivers/impl_rabbit.py", line 767, in _consume
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit return self.connection.drain_events(timeout=timeout)
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit File "/usr/lib/python2.7/dist-packages/kombu/connection.py", line 279, in drain_events
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit return self.transport.drain_events(self.connection, **kwargs)
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit File "/usr/lib/python2.7/dist-packages/kombu/transport/pyamqp.py", line 91, in drain_events
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit return connection.drain_events(**kwargs)
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit File "/usr/lib/python2.7/dist-packages/amqp/connection.py", line 320, in drain_events
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit return amqp_method(channel, args)
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit File "/usr/lib/python2.7/dist-packages/amqp/connection.py", line 526, in _close
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit (class_id, method_id), ConnectionError)
2015-07-20 10:01:30.216 9808 TRACE oslo.messaging._drivers.impl_rabbit ConnectionForced: (0, 0): (320) CONNECTION_FORCED - broker forced connection closure with reason 'shutdown'
TCPDUMP on controller node’s eth3 interface
Controller node is receiving the dhcp request from the instance and sending the response to compute node.
# tcpdump -i eth3 port 67 or port 68 -i eth3
tcpdump: WARNING: eth3: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth3, link-type EN10MB (Ethernet), capture size 65535 bytes
06:13:59.844599 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from fa:16:3e:43:73:98 (oui Unknown), length 281
06:13:59.845346 IP 19.0.0.2.bootps > 19.0.0.3.bootpc: BOOTP/DHCP, Reply, length 323
06:16:03.988711 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from fa:16:3e:43:73:98 (oui Unknown), length 280
06:16:03.989461 IP 19.0.0.2.bootps > 19.0.0.3.bootpc: BOOTP/DHCP, Reply, length 323
TCPDUMP on compute node’s eth3 interface
Compute node is not receiving the dhcp response from controller node.
root@node-21:~# tcpdump -i eth3 port 67 or port 68 -i eth3
tcpdump: WARNING: eth3: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth3, link-type EN10MB (Ethernet), capture size 65535 bytes
06:13:59.855193 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from fa:16:3e:43:73:98 (oui Unknown), length 281
06:16:03.999378 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from fa:16:3e:43:73:98 (oui Unknown), length 280
Because sometimes we have seen private network VMs got DHCP IP addressed automatically. At that time we haven’t seen the below error for that particular network in dhcp-agent.log.
Most of the times VMs are not getting DHCP IP automatically, for those private networks we are seeing same error in dhcp-agent.log.
ERROR neutron.agent.dhcp_agent Unable to enable dhcp for <network_id>”. Attaching the error seen in dhcp-agent.log.
Frequently We are seeing this error in /etc/neutron/server.log, connection broken to AMQP server on 192.168.0.2. After 4-5 seconds it it connected.
2015-08-06 08:48:08.193 3007 INFO oslo.messaging._drivers.impl_rabbit [-] Connecting to AMQP server on 192.168.0.2:5672
2015-08-06 08:48:08.276 3007 ERROR oslo.messaging._drivers.impl_rabbit [-] AMQP server on 192.168.0.2:5672 is unreachable: [Errno 111] ECONNREFUSED. Trying again in 1 seconds.
2015-08-06 08:48:09.279 3007 INFO oslo.messaging._drivers.impl_rabbit [-] Delaying reconnect for 5.0 seconds ...
2015-08-06 08:48:14.279 3007 INFO oslo.messaging._drivers.impl_rabbit [-] Connecting to AMQP server on 192.168.0.2:5672
2015-08-06 08:48:14.292 3007 INFO oslo.messaging._drivers.impl_rabbit [-] Connected to AMQP server on 192.168.0.2:5672
2015-08-06 08:48:14.372 3007 INFO oslo.messaging._drivers.impl_rabbit [-] Connecting to AMQP server on 192.168.0.2:5672
2015-08-06 08:48:14.390 3007 INFO oslo.messaging._drivers.impl_rabbit [-] Connected to AMQP server on 192.168.0.2:5672
I just compared the configuration/status with other open stack setup,
we have similar configuration/status but we don’t see this AMQP
connectivity issue there
# service rabbitmq-server status
Status of node 'rabbit@node-19' ...
[{pid,17084},
{running_applications,[{rabbit,"RabbitMQ","3.3.5"},
{mnesia,"MNESIA CXC 138 12","4.5"},
{os_mon,"CPO CXC 138 46","2.2.7"},
{xmerl,"XML parser","1.2.10"},
{sasl,"SASL CXC 138 11","2.1.10"},
{stdlib,"ERTS CXC 138 10","1.17.5"},
{kernel,"ERTS CXC 138 10","2.14.5"}]},
{os,{unix,linux}},
{erlang_version,"Erlang R14B04 (erts-5.8.5) [source] [64-bit] [smp:4:4] [rq:4] [async-threads:30] [kernel-poll:true]\n"},
{memory,[{total,100398616},
{connection_procs,2677296},
{queue_procs,1835520},
{plugins,0},
{other_proc,9202256},
{mnesia,359896},
{mgmt_db,0},
{msg_index,86360},
{other_ets,940024},
{binary,441088},
{code,14634007},
{atom,1368201},
{other_system,68853968}]},
{alarms,[]},
{listeners,[{clustering,41055,"::"},{amqp,5672,"::"}]},
{vm_memory_high_watermark,0.4},
{vm_memory_limit,6667083776},
{disk_free_limit,50000000},
{disk_free,34774179840},
{file_descriptors,[{total_limit,102300},
{total_used,55},
{sockets_limit,92068},
{sockets_used,53}]},
{processes,[{limit,1048576},{used,949}]},
{run_queue,0},
{uptime,847}]
...done.
# netstat -ntpl | grep 41055
tcp 0 0 0.0.0.0:41055 0.0.0.0:* LISTEN 17084/beam.smp
# netstat -ntl | grep 5672
tcp6 0 0 :::5672 :::* LISTEN
From Controller node:
root@node-19:~# ping 192.168.0.4 -p 5672
PATTERN: 0x5672
PING 192.168.0.4 (192.168.0.4) 56(84) bytes of data.
64 bytes from 192.168.0.4: icmp_req=1 ttl=64 time=0.146 ms
64 bytes from 192.168.0.4: icmp_req=2 ttl=64 time=0.219 ms
64 bytes from 192.168.0.4: icmp_req=3 ttl=64 time=0.119 ms
From Compute node:
root@node-21:~# ping 192.168.0.2 -p 5672
PATTERN: 0x5672
PING 192.168.0.2 (192.168.0.2) 56(84) bytes of data.
64 bytes from 192.168.0.2: icmp_req=1 ttl=64 time=0.190 ms
64 bytes from 192.168.0.2: icmp_req=2 ttl=64 time=0.169 ms
64 bytes from 192.168.0.2: icmp_req=3 ttl=64 time=0.144 ms
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1485606/+subscriptions
References