On 04/19/2017 08:41 AM, TranceWorldLogic . wrote:
Hi,
I was trying to create VM on specific HOST using python sdk as shown below.
------ Code -------------------
vm = vms_service.add( ....
host = types.Host(
name = "host-01",
),
)
------ End Code -------------------
It created VM successfully, but when I see in ovirt GUI I saw that VM is
not bonded with specific host.
Ovirt GUI:
Virtual Machines -> click on VM -> "Edit" button -> In advance menu
->
"Host" tab
Start Running On:
o Any Host in Cluster <== This option got selected
o Specific Host(s) <== *I want this option to select.*
Please help me to bind VM to specific Host via Python SDK
The Vm.host attribute is used only to indicate in what host is the VM
currently running.
To pin the VM to a set of hosts you have to use Vm.placement_policy, as
described here:
http://ovirt.github.io/ovirt-engine-api-model/4.1/#types/vm/attributes/pl...
With the Python SDK it should be something like this:
vm = vms_service.add(
vm=types.Vm(
...
placement_policy=types.PlacementPolicy(
hosts=[
types.Host(name='host-01')
]
)
)
)