handling Hyper-V automatic startup values

Matt Coleman mcoleman at datto.com
Mon Sep 28 17:50:40 UTC 2020


> The Go code represents it as a boolean for example.
> 
> I think our only option is to define a new API
> 
> virDomainSetAutostartPolicy()
> 
> and make it take an int parameter for which we can define an enum.
> 
> The existing API will just have to map new values onto true/false
> as appropriate.
That’s the same conclusion I came to. As with the version numbers, I’ll 
continue implementing functions within the existing API before I 
attempt to add anything new to it.

> I think it helps to consider the use case where someone might pick to
> set  "Restart if previously active".
> 
> Consider if you have 2 hosts, and the same VM config is present on
> both hosts. You only want the VM running on one host at any point
> in time.  In this case you do *not* want to use "always start" as
> if both hosts reboot, you'd get two copies of the VM.
> 
> "Restart if previously active" solves this scenario by only starting
> it on the host it was originally running on.
> 
> With this in mind, making libvirt treat "restart if previously active"
> the same as "always start" is a dangerous configuration. The safe option
> is to consider "restart if previously active" the same as "none".
> 
> So I think values  2 and 3 should map to autostart disabled and
> value 4 to autostart enabled.
I hadn’t considered things like high availability setups. I’ll update my 
code to only treat 4 as enabled.

Thanks!
Matt





More information about the libvir-list mailing list