Execute pre-freeze and post-thaw
-
You can read key/values from the xenstore, and write some (from VM to outside), but you cannot write values "in live" from outside the VM to the inside.
-
@olivierlambert do the guest tools quiesce the filesystems before snapshotting?
-
Tools are aware of a snapshot so you don't have blocks in flight.
-
@olivierlambert So there is information coming from outside into the VM

Is there a particular reason not to implement freeze/thaw scripts in that case? The tools know there is a snap taking place and you said that you can write info from VM to outside, which would have to happen to tell the system that blocks have been committed and is ok to start. Seems like the communication is there, just need to implement the scripts.
Coming from VMware land, this is expected behavior of the guest tools.
I agree with OP, the webhooks looks janky, does not appear to be in the main docs, and the linked docs says it is unstable after 3 years.
-
No, it's not using the same mechanism. It's a PV call (if I remember, but I'm not sure). You cannot write a xenstore key in live to a VM (only on boot).
-
And beyond that, I'm not sure we actually want this behaviour from a security perspective. But it's another topic.
-
@olivierlambert ok, but it wouldn't have to. The guest tools always run the scripts (if they exist) when it sees a snap happening and then reports out the status the same way it says that the block commits are complete.
-
They aren't meant for that, I have no idea how difficult it would be to make the PV drivers to actually "do something" (what exactly? write a value in the xenstore?). Maybe @teddyastie could provide an opinion on that.
-
You can read key/values from the xenstore, and write some (from VM to outside), but you cannot write values "in live" from outside the VM to the inside.
It is, but XAPI doesn't provide a interface for it.
do the guest tools quiesce the filesystems before snapshotting?
Tools are aware of a snapshot so you don't have blocks in flight.
do the guest tools quiesce the filesystems before snapshotting?
Guests kernel are aware, as it is them that are performing a "suspend" on toolstack request (thus quiece filesystems); although "tools" can only observe that the system has been suspended after the fact by measuring side effects, and not orchestrate it.
It's because suspend/resume operation doesn't come from "guest tools" actually, but instead from the kernel drivers. So userland tools has no say on it.
-
There used to be quiescent snapshot capabilities in older versions (mainly for Windows VSS support), but it has since been removed. I'd say @Team-XAPI-Network knows more about the reason.
-
@dinhngtu It's possible to run hooks inside the control domain on different stages of VM lifecycle operations, but these need to be installed beforehand, see https://xapi-project.github.io/new-docs/xenopsd/design/hooks/index.html
I think the vm-pre-suspend is the name of the hook the does this, but I can't confirm it. The docuementation is missing the hook, but it exists in the source code: https://github.com/xapi-project/xen-api/blob/master/ocaml/xenopsd/lib/xenops_hooks.ml#L37
-
@psafont Looks like these hooks are for suspend-resume rather than snapshot/backups? I couldn't find any mention of hook calls during the snapshot process