tripleo - openstack on openstack

Nova bm operations fail when LIBVIRT_DEFAULT_URI not set

Reported by Steve Baker on 2013-09-16
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
tripleo
Medium
Unassigned

Bug Description

In the following scenario:
- Fedora host
- Ubuntu seed-vm

nova baremetal calls from seed-vm -> host fails as fedora does not set uri_default = "qemu:///system" by default at the system level.

A workaround is to do the following:
- on seed-vm, edit /etc/init/nova-compute.conf, add on line 3:
    env LIBVIRT_DEFAULT_URI=qemu:///system
- run:
  service nova-compute restart

Proper fix is to modify os-svc-install to take an argument which allows env to be set in upstart files, and specify LIBVIRT_DEFAULT_URI=qemu:///system in nova/install.d/74-nova

A similar fix may be required for systemd scripts.

Mark McLoughlin (markmc) wrote :

This feels like it could be a config setting for the virtual power driver e.g.

  [baremetal]
  virtual_power_host_user=markmc
  virtual_power_host_key=/opt/stack/boot-stack/virtual-power-key
  virtual_power_ssh_host=192.168.122.1
  virtual_power_type=virsh
  virtual_power_libvirt_uri=qemu:///system

I'm also going to try working around by adding this:

  uri_default=qemu:///system

to ~/.config/libvirt.conf in the $vp_host_user account on $vp_ssh_host

Mark McLoughlin (markmc) wrote :

It's actually:

  uri_default = qemu:///system

in ~/.config/libvirt/libvirt.conf

(i.e. I got the path wrong)

Steve Baker (steve-stevebaker) wrote :

Workarounds #1 and #2 error on Fedora 19. The correct contents of ~/.config/libvirt/libvirt.conf should be:

uri_default = "qemu:///system"

Robert Collins (lifeless) wrote :

I'm fairly sure we fixed this durin the sprint.

Changed in tripleo:
status: New → Triaged
importance: Undecided → Medium
status: Triaged → Fix Released
Tim Serong (tserong) wrote :

According to the git logs, commit 96f3f7d (Change-Id: I1279bb1b303c81a7ae627ee0b579302e5163d398) is meant to fix this, but AFAICT it doesn't fix it on my openSUSE host. I'm not sure why yet, I haven't had a chance to dig any deeper, just mentioning this for the record. I can confirm that the workaround in comment #3 works fine for me though.

Jan Provaznik (jan-provaznik) wrote :

I don't think the released patch fixes this issue (Change-Id: I1279bb1b303c81a7ae627ee0b579302e5163d398) - it just sets environment variable for nova-compute service in VM. But this variable is needed on virtual host where nova's virtual driver is ssh-ing to. I don't see anywhere in nova code that this variable would be taken into account when doing ssh connection (and local env variables are not automatically propagated through ssh). I like Mark's solution - make it config setting.

Setting back to Triaged.

Changed in tripleo:
status: Fix Released → Triaged
Imre Farkas (ifarkas) wrote :

I can confirm it's not fixed. I am still seeing this issue on Fedora unless I set LIBVIRT_DEFAULT_URI in /etc/profile.d/virsh.sh as a workaround.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers