[pve-devel] [PATCH] Add CT suspend/resume to PVE API

Dietmar Maurer dietmar at proxmox.com
Fri Oct 3 10:53:16 CEST 2014


> > 1.) Implement suspend/resume API
> > 2.) add it to pvectl
> > 3.) Implement suspend/resume GUI (extjs)
> > 4.) Implement suspend/resume GUI (mobile)
> Alright, I'll make that happen tomorrow.  Currently just after 02:00 here.  :-)

Thanks!

> > I also have some further ideas. Currently qemu suspend/resume does not
> > save state to disk. It would be great to implement that also.
> I'll have to research that some, but I should be able to write a patch for that as
> well.
> > Then implement an option in datacenter.cfg like:
> >
> > reboot: stop|suspend
> >
> > So that VMs are suspended while we reboot a host. What do you think?
> That would probably save a *lot* of time bringing servers back up after
> reboot.  I'll look into that as well, probably next week.

OK

> To go another step with that logic, I wonder if there might be a benefit to
> modifying QEMU migrations so they suspend with state, transfer the suspended
> VM, and resume on the destination node.

This is how migrate works (basically). Or what is the difference?

> I could see an advanced implementation where VM snapshots are taken
> periodically, and if the node experiences a power failure, the VM could resume
> from the snapshot.  HA failover could take advantage of the same snapshots in
> the same way, thereby (hopefully) losing less data, and possibly resulting in less
> downtime.  This would definitely need to be an option enabled on VMs that
> would benefit from such an approach, rather than enabled universally, and is
> advanced enough it might remain in the realm of third-party scripts or packages,
> but it still might be useful.
> Before I get too far into the QEMU suspend-with-state patch, I want to ask -
> does OpenVZ support suspend-with-state?  Might be nice to support that in the
> patch, too, if it does.

You already implemented that!

    chkpnt CTID [--dumpfile name]
           This  command  saves  a  complete state of a running container to a
           dump file, and stops the container. If an option --dumpfile is  not
           set, default dump file name /vz/dump/Dump.CTID is used.



More information about the pve-devel mailing list