Bug 857256
Summary: | nova-compute regularly disconnects from qpidd | ||
---|---|---|---|
Product: | Red Hat OpenStack | Reporter: | Russell Bryant <rbryant> |
Component: | openstack-nova | Assignee: | Alan Pevec <apevec> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Nir Magnezi <nmagnezi> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | 1.0 (Essex) | CC: | jkt, kchamart, pbrady, sclewis |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | openstack-nova-2012.1.3-1.el6 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2013-10-31 17:03:22 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Russell Bryant
2012-09-13 23:19:02 UTC
VERIFIED on Folsom. Version: python-nova-2012.2.3-4.el6ost.noarch 1/ Ensure the default value for qpid_heartbeat is 60 ============= # grep -i -A2 qpid_heartbeat /usr/lib/python2.6/site-packages/nova/openstack/common/rpc/impl_qpid.py cfg.IntOpt('qpid_heartbeat', default=60, help='Seconds between connection keepalive heartbeats'), -- self.connection.heartbeat = self.conf.qpid_heartbeat self.connection.protocol = self.conf.qpid_protocol self.connection.tcp_nodelay = self.conf.qpid_tcp_nodelay ============= 2/ Yield to other threads during time consuming periodic tasks change: ============= # grep eventlet.sleep /usr/lib/python2.6/site-packages/nova/manager.py eventlet.sleep(0) ============= # grep greenthread /usr/lib/python2.6/site-packages/nova/virt/libvirt/*.py /usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py:from eventlet import greenthread /usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py: greenthread.sleep(1) /usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py: greenthread.sleep(0) /usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py: time_module = greenthread /usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py: greenthread.spawn(self._live_migration, ctxt, instance_ref, dest, /usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py: greenthread.sleep(1) /usr/lib/python2.6/site-packages/nova/virt/libvirt/driver.py: greenthread.sleep(0) /usr/lib/python2.6/site-packages/nova/virt/libvirt/firewall.py: # execute in a native thread and block current greenthread until done ============= Sanity: All nova services running just fine, with the above fix, on Folsom: ============= # for j in `for i in $(ls -1 /etc/init.d/openstack-nova-*) ; do $i status | grep running ; done | awk '{print $1}'` ; do service $j status ; done openstack-nova-cert (pid 29558) is running... openstack-nova-compute (pid 29580) is running... openstack-nova-console (pid 29621) is running... openstack-nova-consoleauth (pid 29656) is running... openstack-nova-network (pid 29698) is running... openstack-nova-novncproxy (pid 29714) is running... ============= |