Created attachment 988314 [details] Test template Description of problem: When creating a server via a simple heat template, We can create a volume from image, and then assign it as a block device, however when libvirt tries to boot the instance, libvirt errors trying to find a local ephemeral disk. Version-Release number of selected component (if applicable): RHOSP5 Current How reproducible: very Steps to Reproduce: 1. Run test.yaml heat template 2. 3. Actual results: 2015-02-03 21:15:49.820 17117 ERROR nova.scheduler.filter_scheduler [req-7bbe4368-9cfa-4944-95c8-19dde6dc38ca c801e48224c247928cec0f48e2bb58a1 e33f4c39e8c44ed7b61e35eb865edec7] [instance: 025bbe5f-79f9-41a8-9d15-879a28f293bc] Error from last host: rhosp-6.openstack.gsslab.rdu2.redhat.com (node rhosp-6.openstack.gsslab.rdu2.redhat.com): [u'Traceback (most recent call last):\n', u' File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 1335, in _build_instance\n set_access_ip=set_access_ip)\n', u' File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 395, in decorated_function\n return function(self, context, *args, **kwargs)\n', u' File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 1747, in _spawn\n LOG.exception(_(\'Instance failed to spawn\'), instance=instance)\n', u' File "/usr/lib/python2.7/site-packages/nova/openstack/common/excutils.py", line 68, in __exit__\n six.reraise(self.type_, self.value, self.tb)\n', u' File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 1744, in _spawn\n block_device_info)\n', u' File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 2323, in spawn\n block_device_info)\n', u' File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 3746, in _create_domain_and_network\n power_on=power_on)\n', u' File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 3647, in _create_domain\n domain.XMLDesc(0))\n', u' File "/usr/lib/python2.7/site-packages/nova/openstack/common/excutils.py", line 68, in __exit__\n six.reraise(self.type_, self.value, self.tb)\n', u' File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 3642, in _create_domain\n domain.createWithFlags(launch_flags)\n', u' File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 179, in doit\n result = proxy_call(self._autowrap, f, *args, **kwargs)\n', u' File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 139, in proxy_call\n rv = execute(f,*args,**kwargs)\n', u' File "/usr/lib/python2.7/site-packages/eventlet/tpool.py", line 77, in tworker\n rv = meth(*args,**kwargs)\n', u' File "/usr/lib64/python2.7/site-packages/libvirt.py", line 728, in createWithFlags\n if ret == -1: raise libvirtError (\'virDomainCreateWithFlags() failed\', dom=self)\n', u"libvirtError: Failed to open file '/var/lib/nova/instances/025bbe5f-79f9-41a8-9d15-879a28f293bc/disk': No such file or directory\n"] Expected results: instance launches using $hostname-boot as its root volume Additional info:
This has also been raised in upstream launchpad, I've linked to the bug
This looks more like a new feature in Kilo, so I'd be reluctant to backport it to Juno. The current target release is RHEL-OSP 7 (i.e. Kilo) and the feature will be available in that release (it has merged upstream).
(In reply to Zane Bitter from comment #6) > This looks more like a new feature in Kilo, so I'd be reluctant to backport > it to Juno. The current target release is RHEL-OSP 7 (i.e. Kilo) and the > feature will be available in that release (it has merged upstream). Zane - The customer reported this against osp5-rhel7 however when the bz was filed it wasn't flagged accordingly and thus the bot set the target to osp7. The customer is booting from ceph volumes and this issue prevents them from being able to use heat templates: "We use ceph volume booting and this renders heat templates useless." Can this be considered for backport to osp5/osp6? Thanks!