Nevertheless, It looks not work properly. I have set:
SCHED_DS_REQUIREMENTS = "NAME=vidc-vm"
and
SCHED_DS_REQUIREMENTS = “NAME=“vidc-vm””
[oneadmin@vdicone01 ~]$ onedatastore list
ID NAME SIZE AVAIL CLUSTERS IMAGES TYPE DS TM STAT
0 system - - 0 0 sys - ssh on
1 default 6.7G 26% 0 0 img fs ssh on
2 files 6.7G 26% 0 0 fil fs ssh on
107 vdic-vm - - 0,100 0 sys - ssh on
108 vdic-core 6.7G 26% 0,100 1 img fs shared on
But on logs appears:
> Sun Dec 4 18:58:44 2016 [Z0][SCHED][D]: Getting VM and Host information. Total time: 0.02s
> Sun Dec 4 18:58:44 2016 [Z0][SCHED][D]: Host 1 discarded for VM 28. It does not fulfill SCHED_REQUIREMENTS.
> Sun Dec 4 18:58:44 2016 [Z0][SCHED][D]: Match-making results for VM 28:
> Cannot schedule VM, there is no suitable host.
If I comment the SCHED_DS_REQUIREMENTS it looks work better.
I think this is because the vdic-vm datastore is a “system” type datastore.
That’s where ONE places symlinks to or copies of images that are in use by VM’s, if you would change vdic-vm into vdic-core (which is type IMG), it should work.
just checking - the original system datastore and the host are member of the same cluster,
but is the new datastore available to that cluster as well ?
[oneadmin@vdicone01 ~]$ oneimage list
ID USER GROUP NAME DATASTORE SIZE TYPE PER STAT RVMS
10 oneadmin oneadmin vdicimage vdic-core 8G OS Yes used 1
[oneadmin@vdicone01 ~]$ onehost list
ID NAME CLUSTER RVM ALLOCATED_CPU ALLOCATED_MEM STAT
1 vdicone01 VDICube 1 50 / 400 (12%) 512M / 5.7G (8%) on
[oneadmin@vdicone01 ~]$
** You will be able to see status=used because I have commented the SCHED_DS_REQUIREMENTS.
Hi!
Just for clarification if any user visits this post, if you want to live migrate a VM you would need the shared Transfer Method and a distributed FS like NFS, Ceph, Lustre or Gluster as stated here. If you don’t need live migration you can use the SSH transfer method, where VMs can be migrated powering of the VM in one node and then resumed automatically in a different node.
Hi oscar!
I’m reviewing your first post. If you set SCHED_DS_REQUIREMENTS = “NAME=vidc-vm” the VM is not deployed because “It does not fulfill SCHED_REQUIREMENTS”.
The funny thing is that it complains about SCHED_REQUIREMENTS not SCHED_DS_REQUIREMENTS which is a different attribute!!!
As explained here, host1 is discarded because of SCHED_REQUIREMENTS, which means that “Those hosts that do not meet the VM requirements (see the SCHED_REQUIREMENTS attribute) or do not have enough resources (available CPU and memory) to run the VM are filtered out”
If it was a problem with datastores, the message accordint to source code would be something like “It does not fulfill SCHED_DS_REQUIREMENTS.”, with DS.
Sorry, I’ve to ask, are you sure that after doing some tests the template is using SCHED_DS_REQUIREMENTS=“NAME=vidc-vm” and not SCHED_REQUIREMENTS=“NAME=vidc-vm”? If using SCHED_REQUIREMENTS that host will be discarded as it may be trying to deploy the VM in a host with NAME=vidc-vm, which may force the scheduler to say no!
Hi!
sorry to ask, that was my bet as the names are so similar
And when trying to instantiate that template you still get the same “It does not fulfill SCHED_REQUIREMENTS”? I can’t understand how the SCHED_DS_REQUIREMENTS can produce a SCHED_REQUIREMENTS error message,