Hi, I still think that the emulator is more a property of the host/driver rather than the VM. Currently we address this by creating two different drivers, each one with a different emulator attribute (i.e. two different VMM_MAD entries in oned.conf using two different vmm_exec_kvm.conf files). Then each host is added using the driver with the right emulator for the host (e.g. onehost create host1 -v kvm_qemu ... or onehost create host2 -v kvm_sparc ...)
Also, if added to the VM template, this would need to be added to the AUTOMATIC_REQUIREMENTS for the scheduler so the host selected for the VM supports the emulator set in the VM template. Did you try the one driver per emulator approach? Does it work for you? Cheers Ruben On Wed Jan 21 2015 at 1:08:33 AM Vladislav Gorbunov <vadi...@gmail.com> wrote: > Set emulator in vm template will allow to select different type of > qemu system emulator for each VM. You can select "user mode", arm or > alpha qemu emulator and much more what need without create different > OpenNebula installations for each qemu type. Also it allow to use different > version of qemu at one host. > And comment in /etc/one/vmm_exec/vmm_exec_kvm.conf say that emulator can > be overridden in each VM template: > # Default configuration attributes for the KVM driver > # (all domains will use these values as defaults). These values can > # be overridden in each VM template. Valid atributes are: > # - emulator > # - os [kernel,initrd,boot,root,kernel_cmd,arch,machine] > .. > > I make the patch for default drivers EMULATOR attribute override in VM > template. http://dev.opennebula.org/issues/3510 > > 2015-01-21 3:00 GMT+10:00 Ruben S. Montero <rsmont...@opennebula.org>: > >> Hi, >> >> Yes the VM template is parsed in Virtual Machine.cc insert function. >> Those variables not recognized by oned are moved to the user template, >> that's the reason you are not getting the value. >> >> However, note that the emulator refers to the configuration of the >> hypervisor so I think that the driver configuration file is the right place >> to set this. Note that in general you do not know where the VM is going to >> be deployed beforehand and maybe the EMULATOR value in the VM is not >> compatible with the host. >> >> Cheers >> >> Ruben >> >> On Tue, Jan 20, 2015, 5:25 AM Vladislav Gorbunov <vadi...@gmail.com> >> wrote: >> >>> Hi! >>> >>> I want to override EMULATOR attribute in VM template for KVM guest. But >>> if I define >>> in vm template >>> EMULATOR="/usr/bin/qemu-system-x86_64" >>> and try to get EMULATOR from template in /src/vmm/LibVirtDriverKVM.cc: >>> vm->get_template_attribute("EMULATOR", emulator_path); >>> It always return empty string. >>> get_default("EMULATOR",emulator_path); >>> return value defined in /etc/one/vmm_exec/vmm_exec_kvm.conf. >>> Is any filter in code that remove values from user templates? >>> >>> >>> _______________________________________________ >>> Dev mailing list >>> Dev@lists.opennebula.org >>> http://lists.opennebula.org/listinfo.cgi/dev-opennebula.org >>> >> >
_______________________________________________ Dev mailing list Dev@lists.opennebula.org http://lists.opennebula.org/listinfo.cgi/dev-opennebula.org