how to specify architecture for a instance to run in compute node ?
Is there any command to specify arch ( armv8/ x86 ) for a instance to be in compute node ?
First time here? Check out the FAQ!
Is there any command to specify arch ( armv8/ x86 ) for a instance to be in compute node ?
It is rather works in an indirect way. Based on different properties of the instance, image, flavor the list of available compute nodes are filtered, and one is picked for starting your instance, but you cannot start directly where to/how to start your instance (like when you start qemu directly).
Openstack keeps track of the supported instance types for all compute nodes (this is set in nova.conf)
[root@controller ~]# mysql -e 'select hypervisor_hostname,supported_instances from nova.compute_nodes'
+--------------------------+--------------------------------------------------------------------------------------------------------+
| hypervisor_hostname | supported_instances |
+--------------------------+--------------------------------------------------------------------------------------------------------+
| compute1.openstack.local | [["i686", "qemu", "hvm"], ["x86_64", "qemu", "hvm"]] |
| compute2.openstack.local | [["i686", "qemu", "hvm"], ["i686", "kvm", "hvm"], ["x86_64", "qemu", "hvm"], ["x86_64", "kvm", "hvm"]] |
+--------------------------+--------------------------------------------------------------------------------------------------------+
So in case setting an image property "architecture" , the ImagePropertiesFilter at nova-scheduler will choose an appropriate compute node for you.
You could also use host aggregates, to suggest your preferred compute node. This case you create a flavor with a specific metadata (like arch=arm), and a matching host-aggregate (having the same key). If you start an instance with a that specific flavor, it will be started on the specific compute node(s) in the aggregate. See more: http://docs.openstack.org/havana/conf...
To start arm images on x86 host, you should 1. Install qemu (ensure you have qemu-system-arm) 2. Check qemu capabilities
[root@compute1 ~]# virsh capabilities |grep -C 2 arm
<guest>
<os_type>hvm</os_type>
<arch name='arm'>
<wordsize>64</wordsize>
<emulator>/usr/bin/qemu-system-arm</emulator>
<machine>integratorcp</machine>
<machine>collie</machine>
3. If you installed qemu recently, probably you should restart nova-compute 4. Check the nova_compute mysql table again.
[root@controller ~]# mysql -e 'select hypervisor_hostname,supported_instances from nova.compute_nodes'
| hypervisor_hostname | supported_instances
+--------------------------+--------------------------------------------------------------------------------------------------------------------------------------- -----------------------------------------------------------------------------------------------------------------------------------------------------------------+
| compute1.openstack.local | [["i686", "qemu", "hvm"], ["x86_64", "qemu", "hvm"], ["arm", "qemu", "hvm"], ["microblaze", "qemu", "hvm"], ["microblazeel", "qemu", "hvm"], ["mips", "qemu", "hvm"], ["mipsel", "qemu", "hvm"], ["sparc", "qemu", "hvm"], ["ppc", "qemu", "hvm"], ["ppc64", "qemu", "hvm"], ["s390x", "qemu", "hvm"]]
Thanks for reply, i have doubt that how can we run a vm with arch as "arm" on a compute node( who is arch is x86)
As you suggested, i did updated my qemu, and i got to list at compute node having arm as supported list. how could we specify at controller or compute node to run a VM having a achitecture of our choice ( x86, arm etc) . give some command if possible.
I red CLI, i could find following command for specifying arch details for a image
$glance image-update IMG-UUID --property architecture=x86_64
Any other idea ?
Asked: 2014-08-13 22:34:06 -0600
Seen: 1,748 times
Last updated: Aug 14 '14
NOVA-COMPUTE SERVICE DOWN ON CONTROLLER NODE
Kolla-build failures on base_arch=aarch64
Glance, nova not working with keystone on SSL
How nova-api fulfill the a complicated requests
Failed when I try to start openstack-compute
instance resizing not working with xenserver 6.2