
On Thu, Jul 21, 2016 at 03:37:22PM +0000, Katerina Koukiou wrote:
This patch series adds support for saving an running lxc domain's state into files with lxcDomainSave and restore afterwards from files with lxcDomainRestore. Usage: virsh save [domain-name] [domain-id or domain-uuid] [directory name] I use CRIU tool (https://criu.org/Main_Page), that offers checkpoint/restore functionality for containers in userspace. For the time, I have tried successfully the C/R procedure for simple sh containers and OS containers. I'll mention some notes/issues here: *I have working C/R only for non systemd hosts (on systemd host I was facing problems with CRIU). *I have not done anything for container networking. Thats should be done with --veth-pair IN=OUT option in CRIU. *In new distros, where efivars mountpoint exists, CRIU dump fails. *The only tty restored is /dev/tty1. I'll fix this in another patch, to allow more ttys. *Currently for things to work, I have slightly modified criu source. That is in criu master I have the following diff:
diff --git a/criu/tty.c b/criu/tty.c index 302dd54..2226484 100644 --- a/criu/tty.c +++ b/criu/tty.c @@ -1394,8 +1394,10 @@ static int verify_info(struct tty_info *info) */ if (term_opts_missing_any(info)) { if (tty_is_master(info)) { + /* pr_err("Corrupted master peer %x\n", info->tfe->id); return -1; + */ } else if (!term_opts_missing_all(info)) { pr_err("Corrupted slave peer %x\n", info->tfe->id); return -1;
Lastly, I have ready a patch that adds support for migration but I wait for feedback on this series, and I'll send the migration one later. Anyway, any comments here are more than welcome.
I'd recommend focusing on getting save/restore more broadly functional before considering anything todo with migration. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|